当前位置:主页 > 计算机电子书 > javascript > Web开发下载
JavaScript Web应用开发

JavaScript Web应用开发 PDF 原书超清版

  • 更新:2021-12-27
  • 大小:12.6 MB
  • 类别:Web开发
  • 作者:Nicolas、Bevacqua
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

内容简介

本书是面向一线开发人员的实用教程,全面梳理和总结了最新的Web开发技术和程序,为JavaScript开发人员提供了提高Web开发质量和流程的最新技术。这本书主要分为两部分首先,它旨在构建JavaScript驱动的开发其次,介绍了如何管理应用程序设计的复杂性,包括模块化、MVC、异步代码流、并测试API设计原则。

目录

  • 第一部分构建过程
  • 第1章构建优先2
  • 1.1问题出现了2
  • 1.1.145分钟内每秒损失17万美元3
  • 1.1.2构建优先3
  • 1.1.3繁琐的前戏4
  • 1.2遵守构建优先原则,提前计划5
  • 1.3构建过程7
  • 1.4处理应用的复杂度和设计理念8
  • 1.5钻研构建优先原则12
  • 1.5.1检查代码质量12
  • 1.5.2在命令行中使用lint工具15
  • 1.6总结18
  • 第2章编写构建任务,制定流程19
  • 2.1介绍Grunt20
  • 2.1.1安装Grunt21
  • 2.1.2设置第一个Grunt任务23
  • 2.1.3使用Grunt管理构建过程24
  • 2.2预处理和静态资源优化26
  • 2.2.1详述预处理26
  • 2.2.2处理LESS28
  • 2.2.3打包静态资源31
  • 2.2.4简化静态资源32
  • 2.2.5创建子图集34
  • 2.3检查代码完整性36
  • 2.3.1清理工作目录36
  • 2.3.2使用lint程序检查代码37
  • 2.3.3自动运行单元测试38
  • 2.4首次自己编写构建任务38
  • 2.5案例分析:数据库任务39
  • 2.6总结41
  • 第3章精通环境配置和开发流程42
  • 3.1应用的环境42
  • 3.1.1配置构建模式43
  • 3.1.2环境层面的配置47
  • 3.1.3开发环境有什么特别之处48
  • 3.2配置环境48
  • 3.2.1瀑布式存储配置的方法49
  • 3.2.2通过加密增强环境配置的安全性50
  • 3.2.3使用系统级方式设置环境层面的配置52
  • 3.2.4在代码中使用瀑布式方法合并配置53
  • 3.3自动执行繁琐的首次设置任务54
  • 3.4在持续开发环境中工作54
  • 3.4.1监视变动,争分夺秒55
  • 3.4.2监视Node应用的变动56
  • 3.4.3选择一款合适的文本编辑器57
  • 3.4.4手动刷新浏览器已经过时了58
  • 3.5总结58
  • 第4章发布、部署和监控59
  • 4.1发布应用60
  • 4.1.1优化图像60
  • 4.1.2缓存静态资源62
  • 4.1.3内嵌对首屏至关重要的CSS64
  • 4.1.4部署前要测试65
  • 4.2预部署操作65
  • 4.2.1语义化版本66
  • 4.2.2使用更改日志67
  • 4.2.3提升版本号时提交更改日志67
  • 4.3部署到Heroku68
  • 4.3.1在Heroku的服务器中构建70
  • 4.3.2管理多个环境71
  • 4.4持续集成71
  • 4.4.1使用Travis托管的CI72
  • 4.4.2持续部署73
  • 4.5监控和诊断74
  • 4.5.1日志和通知74
  • 4.5.2调试Node应用76
  • 4.5.3分析性能78
  • 4.5.4运行时间和进程管理78
  • 4.6总结79
  • 第二部分管理复杂度
  • 第5章理解模块化和依赖管理82
  • 5.1封装代码83
  • 5.1.1理解单一职责原则84
  • 5.1.2信息隐藏和接口86
  • 5.1.3作用域和this关键字87
  • 5.1.4严格模式90
  • 5.1.5提升变量的作用域91
  • 5.2JavaScript模块92
  • 5.2.1闭包和模块模式92
  • 5.2.2原型的模块化93
  • 5.2.3CommonJS模块94
  • 5.3管理依赖95
  • 5.3.1依赖图95
  • 5.3.2介绍RequireJS98
  • 5.3.3Browserify:在浏览器中使用CJS模块100
  • 5.3.4Angular管理依赖的方式100
  • 5.4理解包管理102
  • 5.4.1Bower简介103
  • 5.4.2大型库,小组件104
  • 5.4.3选择合适的模块系统105
  • 5.4.4学习循环依赖105
  • 5.5ECMAScript6新功能简介106
  • 5.5.1在Grunt任务中使用Traceur107
  • 5.5.2Harmony中的模块107
  • 5.5.3创建块级作用域的let关键字108
  • 5.6总结109
  • 第6章理解JavaScript中的异步流程控制方法110
  • 6.1使用回调110
  • 6.1.1跳出回调之坑111
  • 6.1.2解开混乱的回调112
  • 6.1.3嵌套请求114
  • 6.1.4处理异步流程中的错误116
  • 6.2使用async库119
  • 6.2.1使用瀑布式、串行还是并行119
  • 6.2.2异步函数式任务123
  • 6.2.3异步任务队列124
  • 6.2.4制定流程和动态流程125
  • 6.3使用Promise对象127
  • 6.3.1Promise对象基础知识127
  • 6.3.2链接Promise对象130
  • 6.3.3控制流程132
  • 6.3.4处理被拒绝的Promise对象133
  • 6.4理解事件134
  • 6.4.1事件和DOM134
  • 6.4.2自己实现事件发射器135
  • 6.5展望:ES6生成器138
  • 6.5.1创建第一个生成器138
  • 6.5.2生成器的异步性140
  • 6.6总结141
  • 第7章使用模型-视图-控制器模式142
  • 7.1jQuery力不胜任142
  • 7.2在JavaScript中使用MVC模式145
  • 7.2.1为什么使用Backbone146
  • 7.2.2安装Backbone147
  • 7.2.3使用Grunt和Browserify编译Backbone模块147
  • 7.3介绍Backbone148
  • 7.3.1Backbone视图149
  • 7.3.2创建Backbone模型152
  • 7.3.3使用Backbone集合组织模型154
  • 7.3.4添加Backbone路由器155
  • 7.4案例分析:购物清单157
  • 7.4.1从静态购物清单开始157
  • 7.4.2添加删除按钮159
  • 7.4.3把物品添加到购物车中161
  • 7.4.4实现行内编辑164
  • 7.4.5服务层和视图路由170
  • 7.5Backbone和Rendr:服务器和客户端共享渲染172
  • 7.5.1Rendr简介172
  • 7.5.2理解Rendr的样板代码174
  • 7.5.3一个简单的Rendr应用176
  • 7.6总结182
  • 第8章测试JavaScript组件184
  • 8.1JavaScript测试速成课185
  • 8.1.1隔离逻辑单元185
  • 8.1.2使用TAP186
  • 8.1.3编写第一个单元测试186
  • 8.1.4在浏览器中运行使用Tape编写的测试187
  • 8.1.5筹备、行动和断言188
  • 8.1.6单元测试188
  • 8.1.7便利性优于约定189
  • 8.1.8案例分析:为事件发射器编写单元测试189
  • 8.1.9测试事件发射器190
  • 8.1.10测试.on方法192
  • 8.1.11驭件、侦件和代理193
  • 8.1.12模拟194
  • 8.1.13介绍Sinon.js195
  • 8.1.14监视函数的调用情况195
  • 8.1.15代理require调用196
  • 8.2在浏览器中测试198
  • 8.2.1伪造XHR请求和服务器响应198
  • 8.2.2案例分析:测试DOM交互200
  • 8.3案例分析:为使用MVC模式开发的购物清单编写单元测试209
  • 8.3.1测试视图路由器209
  • 8.3.2测试视图模型的验证214
  • 8.4自动运行Tape测试216
  • 8.4.1自动运行浏览器中的Tape测试217
  • 8.4.2持续测试218
  • 8.5集成测试、外观测试和性能测试218
  • 8.5.1集成测试219
  • 8.5.2外观测试219
  • 8.5.3性能测试220
  • 8.6总结221
  • 第9章RESTAPI设计和分层服务架构222
  • 9.1规避API设计误区222
  • 9.2学习RESTAPI设计223
  • 9.2.1端点、HTTP方法和版本224
  • 9.2.2请求、响应和状态码227
  • 9.2.3分页、缓存和限流229
  • 9.2.4为API编写文档231
  • 9.3实现分层服务架构232
  • 9.3.1路由层233
  • 9.3.2服务层233
  • 9.3.3数据层234
  • 9.3.4路由层234
  • 9.3.5服务层234
  • 9.3.6数据层235
  • 9.4在客户端使用RESTAPI235
  • 9.4.1请求处理层236
  • 9.4.2中止旧请求236
  • 9.4.3使用一致的方式处理AJAX错误237
  • 9.5总结238
  • 附录ANode.js的模块240
  • 附录B介绍Grunt242
  • 附录C选择合适的构建工具249
  • 附录DJavaScript代码质量指南257

资源下载

资源下载地址1:https://pan.baidu.com/s/1MOU_0JkIn-Y_V9ME73tWqA

相关资源

网友留言

网友NO.43989
毋逸思

朋友问我JavaScript有什么好读的,这本书对我而言,更多的是一种温故而知新,作用域、this、ES6、模块化、异步、Promise、MVC等等,每一个点展开来讲,都有很多有趣的内容,虽然MVVM比MVC更流行,可是看多了就会发现,用jQuery操作DOM是件多么愚蠢的事情……

网友NO.39468
郭康时

一些工程相关的内容,书名容易让人觉得类似于单页web那本书,其实并不是。这种平时只能靠碎片化学习得来的知识,有人整理成书也是再好不过的,只是内容比较容易过时。