大小:39.99M
更新时间:23-09-07
系统:Pc
版本:v
SPA设计与架构:理解单页面Web应用是一本SPA开发教学书籍,由美国的埃米顿.斯科特[ Emmit A.Scott]编著,本书讲述SPA应用程序构建所需的设计与开发技术。书中首先介绍SPA模型,并阐述SPA标准构建方式。随着内容的展开,作者通过具体的SPA构建知识点引导你前进,涵盖MV框架、单元测试、路由、布局管理、数据访问、发布/订阅模式以及客户端任务自动化等内容。书中示例丰富易懂,并可结合各种第三方库或框架来创建,适用于对前端及对SPA 技术感兴趣的开发者阅读。
SPA 开发技术的运用是当今Web 开发领域的热门趋势,但真正全面掌握该技术的开发者并不多。本书详尽阐述单页面Web 应用(SPA)开发技术,从SPA 构建基础入手,通过MV、模块化编程、路由、模块间通信、服务器端交互等概念的阐述,全面介绍SPA 的设计与架构,帮助读者正确掌握SPA 开发的各方面知识要素。同时,《SPA设计与架构:理解单页面Web应用》中还讨论了SPA 的单元测试及客户端任务自动化,覆盖了从开发到部署的一系列任务,让读者在阅读完本书之后能够打下扎实的SPA 开发基础。
《SPA设计与架构:理解单页面Web应用》的重点是帮助读者正确、全面地掌握SPA 开发概念,这些概念都是通用的。但为了让内容更全面、具体,本书将通过Knockout、Backbone.js 及AngularJS 这三种不同风格的MV*框架来进行比较性讨论,这是本书的一大特色。同时在涉及具体MV*框架知识点时,书中会提供相应介绍。书中示例丰富具体,并提供完整源代码下载。
第1 部分 基础知识 1 1 单页面应用程序介绍 3 1.1 SPA 简述 4 1.1.1 无须刷新浏览器 7 1.1.2 表现逻辑位于客户端 7 1.1.3 服务器端事务处理 7 1.2 更进一步 8 1.2.1 以Shell 页面开始 8 1.2.2 从传统页面到视图 9 1.2.3 视图的产生 10 1.2.4 实现无刷新的视图切换 11 1.2.5 贯穿动态更新过程的流畅性 12 1.3 SPA 应用相较传统Web 应用的优势 12 1.4 温故知新 13 1.5 优秀SPA 应用的构成 15 1.5.1 组织项目 15 1.5.2 创建可维护的松耦合UI 17 1.5.3 使用JavaScript 模块 18 1.5.4 执行SPA 导航 19 1.5.5 创建视图组成与布局 19 1.5.6 模块通信 20 1.5.7 与服务器端通信 20 1.5.8 执行单元测试 20 1.5.9 客户端自动化技术 20 1.6 小结 21 2 MV* 框架介绍 .22 2.1 MV* 概念 24 2.1.1 传统UI 设计模式 25 2.1.2 MV* 和浏览器环境 27 2.2 MV* 基础概念 28 2.2.1 框架 29 2.2.2 我们的MV* 项目 30 2.2.3 模型 32 2.2.4 绑定 36 2.2.5 模板 40 2.2.6 视图 44 2.3 为什么要用MV* 框架 44 2.3.1 关注分离 . 45 2.3.2 简化日常任务 46 2.3.3 提升生产率 47 2.3.4 标准化 47 2.3.5 可扩展性 48 2.4 框架选择 48 2.5 挑战环节 50 2.6 小结 50 3 JavaScript 模块化 52 3.1 模块概念 53 3.1.1 模块模式概念 53 3.1.2 模块结构 54 3.1.3 揭示模式 55 3.2 模块化编程的意义 56 3.2.1 避免命名冲突 56 3.2.2 保护代码完整性 65 3.2.3 隐藏复杂性 67 3.2.4 降低代码改变带来的冲击 68 3.2.5 代码组织 68 3.2.6 模块模式的不足 69 3.3 模块模式剖析 69 3.3.1 可访问性控制 69 3.3.2 创建公有API 70 3.3.3 允许全局导入 73 3.3.4 创建模块的命名空间 73 3.4 模块加载及依赖管理 74 3.4.1 脚本加载器 74 3.4.2 异步模块定义――AMD 75 3.4.3 通过RequireJS 实践AMD 76 3.5 挑战环节 81 3.6 小结 81 第2 部分 核心概念 83 4 单页面导航 85 4.1 客户端路由器概念 86 4.1.1 传统导航 86 4.1.2 SPA 导航 86 4.2 路由及其配置 88 4.2.1 路由语法 90 4.2.2 路由配置项 90 4.2.3 路由参数 91 4.2.4 缺省路由 93 4.3 客户端路由器的工作机制 93 4.3.1 片段标识符方式 94 4.3.2 HTML5 历史API 方式 95 4.3.3 使用HTML5 历史API 方式 97 4.4 综合实作:实现SPA 路由 98 4.4.1 教员列表(缺省路由) 99 4.4.2 主要联系人路由 101 4.4.3 教员授课时间(参数化路由) 102 4.5 挑战环节 104 4.6 小结 105 5 视图合成与布局 106 5.1 项目介绍 107 5.2 布局设计概念 108 5.2.1 视图 108 5.2.2 Region 109 5.2.3 视图合成 110 5.2.4 嵌套视图 111 5.2.5 路由 112 5.3 高级合成与布局的可选方案 113 5.3.1 优点 113 5.3.2 缺点 114 5.4 设计应用程序 114 5.4.1 设计基本布局 115 5.4.2 设计基本内容 117 5.4.3 在复杂设计中应用视图管理 122 5.4.4 通过自身状态创建嵌套视图 125 5.5 挑战环节 127 5.6 小结 128 6 模块间交互 129 6.1 模块概念回顾 131 6.1.1 用模块封装代码 131 6.1.2 API 提供对内部功能的访问控制 133 6.1.3 SRP――以单一目的作为设计出发点 134 6.1.4 代码重用――控制项目规模 135 6.2 模块间交互方式 136 6.2.1 通过依赖进行模块间交互 136 6.2.2 依赖方式的优缺点 138 6.2.3 通过发布/ 订阅模式进行模块间交互 138 6.2.4 发布/ 订阅模式优缺点 141 6.3 示例项目细节 142 6.3.1 搜索功能 144 6.3.2 显示产品信息 150 6.4 挑战环节 .. 155 6.5 小结 . 155 7 与服务器端通信 156 7.1 示例项目新要求 157 7.2 与服务器端通信综述 158 7.2.1 选择数据类型 158 7.2.2 HTTP 请求方法 159 7.2.3 数据转换 160 7.3 使用MV* 框架 161 7.3.1 请求生成 162 7.3.2 通过回调函数处理结果 165 7.3.3 通过Promise 处理结果 166 7.3.4 Promise 错误处理 170 7.4 RESTful Web 服务调用 172 7.4.1 什么是REST 172 7.4.2 REST 原则 172 7.4.3 MV* 框架的RESTful 支持 174 7.5 示例项目细节 174 7.5.1 配置REST 调用174 7.5.2 添加产品到购物车 177 7.5.3 查看购物车 179 7.5.4 修改购物车 181 7.5.5 从购物车中移除产品 183 7.6 挑战环节 184 7.7 小结 184 8 单元测试 186 8.1 示例项目说明 187 8.2 什么是单元测试 187 8.2.1 单元测试的好处188 8.2.2 构建更好的单元测试 189 8.3 传统的单元测试 192 8.3.1 QUnit 起步 193 8.3.2 创建第一个单元测试 196 8.3.3 测试由MV* 对象创建的代码 200 8.3.4 测试对DOM 所做的改变 205 8.3.5 混合使用其他测试框架206 8.4 挑战环节 208 8.5 小结 208 9 客户端任务自动化 209 9.1 Task Runner 的常见用途 210 9.1.1 即时刷新浏览器 210 9.1.2 自动化JavaScript 和CSS 的预处理过程 211 9.1.3 自动化Linter 代码分析 211 9.1.4 持续单元测试 211 9.1.5 文件串接 212 9.1.6 代码压缩 212 9.1.7 持续集成 212 9.2 Task Runner 选择 212 9.3 本章示例项目 213 9.3.1 Gulp.js 介绍 214 9.3.2 创建第一个任务 215 9.3.3 创建代码分析任务 216 9.3.4 创建浏览器刷新任务 218 9.3.5 自动化单元测试220 9.3.6 创建构建过程 222 9.4 挑战环节 227 9.5 小结 227 A 员工通讯录示例说明 229 B XMLHttpRequest API 259 C 第7 章内容的服务器端设置与总结 266 D 安装Node.js 与Gulp.js 277
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
应用信息
同类热门
热门标签
网友评论0人参与,0条评论
最新排行
11g101-1图集电子版4.91M官方版 11g101-1图集,又简称为混凝土结构施工图11g101-1,官方全称为混凝土结构施工图平面整体表示方法制图规则和构造详图(现浇混凝土框架、剪力墙、梁、板),由中华人民共和国住房和城乡建设部批准,中国建筑标准设计研究院编制,可以替代03g101-
查看
小鹿点睛助手使用手册4.8Mpdf扫描版 小鹿点睛助手使用手册是由小鹿推广官方针对360移动竞价量身定做的推广软件指导手册。可以面向用户详细介绍小鹿点睛助手的功能特色,并从产品特性、产品介绍、账户管理、编辑器等角度解释说明如何利用软件进行360移动智能调价,能够实现对360移动竞价完善的流
查看
15j401钢梯图集85.81Mpdf高清版15j401钢梯图集是一本钢梯使用规范图集,该图集描述了作业平台钢梯、钢梯及平台钢护栏、固定式钢斜梯、上屋面钢直梯、上吊车钢斜梯、中柱式钢螺旋梯、板式钢螺旋梯的专业图纸及做法,同时按照新的标准规范,对原图集02J401《钢梯》进行修编,提高了钢梯的安全性
查看
Oracle管理之道126.91M张天慧pdf扫描版 Oracle管理之道是目前最完整、最真实、最灵活的oracle数据库指南,由华硕集团昌硕科技DBA张天慧编著。本书内容为作者多年的DBA实践经验的提炼,完全涵盖了担任企业级数据库管理职务所应具备的知识与技能,全书从Oracle实例开始,介绍了各种内
查看
oracle dba手记3数据库性能优化与内部原理解析44.8M盖国强pdf扫描版 oracle dba手记3,全称oracle dba手记3数据库性能优化与内部原理解析,是一本面向程序员的数据库访问性能优化法则,由由盖国强,杨廷琨,冯春培等人编著。全书分为四篇,第一篇为dba之路,由冯春培编写,是他对多年的职业经历与行业观察的总
查看
尼康d800使用说明书21.81Mpdf电子版尼康d800说明书是尼康官方针对尼康d800单反相机而开发的使用说明书,同时适用于d800和d800e,详细的介绍了相机的使用方法,包括如何快速开始指南,即时取景拍摄,动画即时取景,对焦,释放模式,iso感光度,曝光,白平衡,图像增强,闪光拍摄等等重要知
查看
海量运维运营规划之道37.36M唐文 pdf全彩版 海量运维运营规划之道是腾讯、百度一线资深工程师唐文多年经验总结而成的一本书籍,本书把当今中国一线互联网公司的运维工作,成体系地搬到了大家面前,让大家看到中国一线互联网公司是如何做技术运维工作、如何做产品速度体验优化的,以及做这些工作的方法论。同时,
查看
C#程序设计及应用教程(第2版)28.33M马骏pdf扫描版 C#程序设计及应用教程(第2版)是一本C#语言程序设计和应用开发教程,由马骏编著。本书内容丰富简洁、对一些初学者比较难以理解的知识点,尽量用简洁、形象而又浅显易懂的语言来表达。比如泛型、接口、组件、特性、纹理、图形图像用法等。但书中的某些重点章节则
查看
精通css+div网页样式与布局pdf942K高清完整版《精通css+div网页样式与布局》是一本非常实用好学的学习css网页布局入门教程,由前沿科技曾顺编著,人民邮电出版社出版,全书内容非常浅显易懂,完全是针对零基础的初学者而制作的,它系统地讲解了CSS层叠样式表的基础理论和实际运用技术,通过大量实例对CS
查看
delphi程序开发范例宝典第3版159.18Mpdf高清扫描版delphi程序开发范例宝典第3版是目前学习delphi开发最好的图书,由明日科技李慧、刘欣编著,目前已经由小编扫描成了pdf格式文件,可用于电脑、手机上阅读。本书知识点全面,涵盖delphi程序开发中用到的各种技术,包括了524个典型范例,覆盖热点和关
查看
Unity Shader入门精要68.85M冯乐乐pdf扫描版Unity Shader入门精要是一本由百万博客访问量作者冯乐乐编著的Unity Shader经典入门书籍,本书内容独特,填补了Unity Shader和渲染流水线之间的知识鸿沟,对Unity中一些渲染机制的工作原理进行详细剖析,帮助读者解决“是什么”“
查看
javase基础教程940KPDF版 本次给大家分享的javase教程是针对刚接触java的朋友所提供的教程文件,该文件是PDF格式,用户必须在本地安装PDF阅读器才能正常阅读。javase基础教程中都是老鸟们的经验之谈,提供了JavaSE基本知识点、UML建模、单元测试等内容,相信绝
查看