图书介绍
SPA设计与架构 理解单页面Web应用2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (美)埃米顿·A·斯科特(Emmit A.Scott) 著
- 出版社: 北京:电子工业出版社
- ISBN:7121300912
- 出版时间:2016
- 标注页数:280页
- 文件大小:43MB
- 文件页数:303页
- 主题词:
PDF下载
下载说明
SPA设计与架构 理解单页面Web应用PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第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 创建可维护的松耦合UI17
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 创建公有API70
3.3.3 允许全局导入73
3.3.4 创建模块的命名空间73
3.4 模块加载及依赖管理74
3.4.1 脚本加载器74
3.4.2 异步模块定义——AMD75
3.4.3 通过RequireJS实践AMD76
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 Region109
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 什么是REST172
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 API259
C 第7章内容的服务器端设置与总结266
D 安装Node.js与Gulp.js277
热门推荐
- 2823040.html
- 1585459.html
- 2060631.html
- 1280466.html
- 1313431.html
- 1684436.html
- 3650913.html
- 3690687.html
- 3763186.html
- 125009.html
- http://www.ickdjs.cc/book_911292.html
- http://www.ickdjs.cc/book_2407403.html
- http://www.ickdjs.cc/book_1276554.html
- http://www.ickdjs.cc/book_2844607.html
- http://www.ickdjs.cc/book_2107705.html
- http://www.ickdjs.cc/book_2980591.html
- http://www.ickdjs.cc/book_2435827.html
- http://www.ickdjs.cc/book_1288177.html
- http://www.ickdjs.cc/book_1192960.html
- http://www.ickdjs.cc/book_1838915.html