当前位置:主页 > 书籍配套资源 > Web应用配套资源
《单页Web应用:JavaScript从前端到后端》配套资源

《单页Web应用:JavaScript从前端到后端》配套资源

  • 更新:2021-10-27
  • 大小:12.16 MB
  • 类别:Web应用
  • 作者:Michael、S.、Mikowski 
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

编辑推荐

如果你的网站还是一系列跳转页面,那就落伍了。单页Web应用(single page web application,SPA)是你接下来的选择:将用户界面渲染和业务逻辑放在浏览器端,只在同步数据的时候才和服务器通信,它们可以提供流畅的用户体验,就像本地应用程序一样。不过,单页Web应用的开发、管理和测试有很大的挑战。

本书展示了从前端到后端都使用JavaScript来开发复杂的单页Web应用,你的团队能够很容易地进行设计、测试、维护和扩展,不会受到某个框架的限制。期间你将会使用HTML5、CSS3和JavaScript的高级开发技能,Web服务器和数据库的语言也是JavaScript。

本书读者需要具备基本的Web开发知识,但不要求具备单页Web应用的相关开发经验。

要下载本书的代码可以登录manning.com/SinglePageWebApplications。

内容简介

《单页Web应用:JavaScript从前端到后端》是设计和构建大规模JavaScript单页Web应用(SPA)的宝贵指南,这些应用从前端到后端都使用JavaScript:浏览器端应用、Web服务器和数据库。

《单页Web应用:JavaScript从前端到后端》大约三分之二的内容专门讲解单页Web应用的客户端开发,先定义何为JavaScript单页应用,接着介绍书中使用的单页Web应用的架构,然后依次讲解Shell模块、功能模块、Model模块、Data模块和Fake模块等,其中还专门拿出一整章讲解开发单页Web应用时需要掌握的JavaScript概念和特性;剩下三分之一的内容讲解单页Web应用的服务器端开发和其他与单页Web应用相关的知识,如Node.js、MongoDB、CDN、搜索引擎优化、数据分析、错误日志以及各个层级的缓存等。本书最后的两个附录分别介绍JavaScript的编码规范和单页Web应用的测试。

《单页Web应用:JavaScript从前端到后端》适合Web开发人员、架构师和产品经理阅读,需要读者至少要有些JavaScript、HTML和CSS的开发经验。

作者简介

本书作者是架构师和工程管理者。Michael Mikowski已经开发过许多商业级单页Web应用,其中有个平台每年要处理的请求超过1000亿次。Josh Powell搭建过一些流量非常大的网站。

目录

  • 第一部分 单页应用简介
  • 第1章 第一个单页应用 
  • 1.1 定义、一些历史和一些关注点 
  • 1.1.1 一些历史 
  • 1.1.2 是什么导致JavaScript单页应用姗姗来迟 
  • 1.1.3 我们的关注点 
  • 1.2 构建第一个单页应用 
  • 1.2.1 定义目标 
  • 1.2.2 创建文件结构 
  • 1.2.3 使用Chrome开发者工具 
  • 1.2.4 开发HTML和CSS 
  • 1.2.5 添加JavaScript 
  • 1.2.6 使用Chrome开发者工具查看应用 
  • 1.3 精心编写的单页应用的用户效益 
  • 1.4 小结 
  • 第2章 温故JavaScript 
  • 2.1 变量作用域 
  • 2.2 变量提升 
  • 2.3 高级变量提升和执行环境对象 
  • 2.3.1 提升 
  • 2.3.2 执行环境和执行环境对象 
  • 2.4 作用域链 
  • 2.5 JavaScript对象和原型链 
  • 2.6 函数——更深入的窥探 
  • 2.6.1 函数和匿名函数 
  • 2.6.2 自执行匿名函数 
  • 2.6.3 模块模式——将私有变量引入JavaScript 
  • 2.6.4 闭包 
  • 2.7 小结 
  • 第二部分 单页应用客户端
  • 第3章 开发Shell 
  • 3.1 深刻理解Shell 
  • 3.2 创建文件和名字空间 
  • 3.2.1 创建文件结构 
  • 3.2.2 编写应用的HTML文件 
  • 3.2.3 创建CSS根名字空间 
  • 3.2.4 创建JavaScript根名字空间 
  • 3.3 创建功能容器 
  • 3.3.1 选取策略 
  • 3.3.2 编写Shell的HTML 
  • 3.3.3 编写Shell的CSS 
  • 3.4 渲染功能容器 
  • 3.4.1 将HTML转换为JavaScript 
  • 3.4.2 在JavaScript中添加HTML模板 
  • 3.4.3 编写Shell的样式表 
  • 3.4.4 指示应用使用Shell 
  • 3.5 管理功能容器 
  • 3.5.1 编写展开或收起聊天滑块的方法 
  • 3.5.2 给聊天滑块添加点击事件处理程序 
  • 3.6 管理应用状态 
  • 3.6.1 理解浏览器用户所期望的行为 
  • 3.6.2 选取一个策略来管理历史控件 
  • 3.6.3 当发生历史事件时,更改锚 
  • 3.6.4 使用锚来驱动应用状态 
  • 3.7 小结 
  • 第4章 添加功能模块 
  • 4.1 功能模块策略 
  • 4.1.1 与第三方模块的比较 
  • 4.1.2 功能模块和分形MVC模式 
  • 4.2 创建功能模块文件 
  • 4.2.1 规划文件结构 
  • 4.2.2 填写文件 
  • 4.2.3 我们创建了什么 
  • 4.3 设计方法API 
  • 4.3.1 锚接口模式 
  • 4.3.2 Chat的配置API 
  • 4.3.3 Chat的初始化API 
  • 4.3.4 Chat的setSliderPosition API 
  • 4.3.5 配置和初始化的级联 
  • 4.4 实现功能API 
  • 4.4.1 样式表 
  • 4.4.2 修改Chat 
  • 4.4.3 清理Shell 
  • 4.4.4 详细解释执行的过程 
  • 4.5 添加经常使用的方法 
  • 4.5.1 removeSlider方法 
  • 4.5.2 handleResize方法 
  • 4.6 小结 
  • 第5章 构建Model 
  • 5.1 理解Model 
  • 5.1.1 我们将要构建什么 
  • 5.1.2 Model做什么 
  • 5.1.3 Model不做什么 
  • 5.2 创建Model和其他文件 
  • 5.2.1 规划文件结构 
  • 5.2.2 填充文件 
  • 5.2.3 使用统一的触摸——鼠标库 
  • 5.3 设计people对象 
  • 5.3.1 设计person对象 
  • 5.3.2 设计people对象的API 
  • 5.3.3 给people对象的API编写文档 
  • 5.4 构建people对象 
  • 5.4.1 创建伪造的人员列表 
  • 5.4.2 开始构建people对象 
  • 5.4.3 完成people对象的构建 
  • 5.4.4 测试people对象的API 
  • 5.5 在Shell中开启登入和登出的功能 
  • 5.5.1 设计用户登入的体验 
  • 5.5.2 更新Shell的JavaScript 
  • 5.5.3 更新Shell的样式表 
  • 5.5.4 使用UI测试登入和登出 
  • 5.6 小结 
  • 第6章 完成Model和Data模块 
  • 6.1 设计chat对象 
  • 6.1.1 设计方法和事件 
  • 6.1.2 给chat对象的API添加文档 
  • 6.2 构建chat对象 
  • 6.2.1 先创建chat对象的join方法 
  • 6.2.2 更新Fake以响应chat.join 
  • 6.2.3 测试chat.join方法 
  • 6.2.4 给chat对象添加消息传输功能 
  • 6.2.5 更新Fake,模拟消息传输功能 
  • 6.2.6 测试chat的消息传输功能 
  • 6.3 给Model添加Avatar功能 
  • 6.3.1 给chat对象添加Avatar功能 
  • 6.3.2 修改Fake来模拟头像功能 
  • 6.3.3 测试头像功能 
  • 6.3.4 测试驱动开发 
  • 6.4 完成Chat功能模块 
  • 6.4.1 更新Chat的JavaScript 
  • 6.4.2 更新样式表 
  • 6.4.3 测试Chat UI 
  • 6.5 创建Avatar功能模块 
  • 6.5.1 创建Avatar的JavaScript 
  • 6.5.2 创建Avatar的样式表 
  • 6.5.3 更新Shell和浏览文档 
  • 6.5.4 测试Avatar功能模块 
  • 6.6 数据绑定和jQuery 
  • 6.7 创建Data模块 
  • 6.8 小结 
  • 第三部分 单页应用服务器
  • 第7章 Web服务器 
  • 7.1 服务器的作用 
  • 7.1.1 认证和授权 
  • 7.1.2 验证 
  • 7.1.3 数据的保存和同步 
  • 7.2 Node.js 
  • 7.2.1 为什么选择Node.js 
  • 7.2.2 使用Node.js创建‘Hello World’应用 
  • 7.2.3 安装并使用Connect 
  • 7.2.4 添加Connect中间件 
  • 7.2.5 安装并使用Express 
  • 7.2.6 添加Express中间件 
  • 7.2.7 Express的使用环境 
  • 7.2.8 Express的静态文件服务 
  • 7.3 高级路由 
  • 7.3.1 用户对象的CRUD路由 
  • 7.3.2 通用CRUD路由 
  • 7.3.3 把路由放到单独的Node.js模块里面 
  • 7.4 添加认证和授权 
  • 7.5 Web socket和Socket.IO 
  • 7.5.1 简单的Socket.IO应用程序 
  • 7.5.2 Socket.IO和消息服务器 
  • 7.5.3 使用Socket.IO更新JavaScript 
  • 7.6 小结 
  • 第8章 服务器数据库 
  • 8.1 数据库的作用 
  • 8.1.1 选择数据存储 
  • 8.1.2 消除数据转换 
  • 8.1.3 把逻辑放在需要的地方 
  • 8.2 MongoDB简介 
  • 8.2.1 面向文档的存储 
  • 8.2.2 动态文档结构 
  • 8.2.3 开始使用MongoDB 
  • 8.3 使用MongoDB驱动程序 
  • 8.3.1 准备项目文件 
  • 8.3.2 安装并连接MongoDB 
  • 8.3.3 使用MongoDB的CRUD方法 
  • 8.3.4 向服务器应用添加CRUD操作 
  • 8.4 验证客户端数据 
  • 8.4.1 验证对象类型 
  • 8.4.2 验证对象 
  • 8.5 创建单独的CRUD模块 
  • 8.5.1 组织文件结构 
  • 8.5.2 把CRUD移到它自己的模块里面 
  • 8.6 构建chat模块 
  • 8.6.1 开始创建chat模块 
  • 8.6.2 创建adduser消息处理程序 
  • 8.6.3 创建updatechat消息处理程序 
  • 8.6.4 创建disconnect消息处理程序 
  • 8.6.5 创建updateavatar消息处理程序 
  • 8.7 小结 
  • 第9章 单页应用发布准备 
  • 9.1 单页应用针对搜索引擎的优化 
  • 9.2 云和第三方服务 
  • 9.2.1 站点分析 
  • 9.2.2 记录客户端错误 
  • 9.2.3 内容分发网络 
  • 9.3 缓存和缓存破坏 
  • 9.3.1 缓存时机 
  • 9.3.2 Web存储 
  • 9.3.3 HTTP缓存 
  • 9.3.4 服务器缓存 
  • 9.3.5 数据库查询缓存 
  • 9.4 小结 
  • 附录A JavaScript编码标准 
  • 附录B 测试单页应用 

资源下载

资源下载地址1:https://box.lenovo.com/l/S579wk

网友留言