全端Web开发 使用JavaScript与Java出版时间: 2015内容简介 JavaScript和Java这两大生态系统之间如何协同,成为所有Web开发人员共同面临的问题。本书应运而生,全面又简练地为读者展示了最新的C/S应用开发范式。本书以Java和JavaScript这两种最流行的服务器与客户端开发环境为例,全面讲解了最新的C/S应用开发范式。作者不仅讲解了很多实用的C/S开发架构,还通过各种实例进一步强化了读者的认知。目录前言 xiii第1 章 因变而变 11.1 Web 用户 21.2 技术 21.3 软件开发 31.4 哪些没变 41.4.1 Web 的本质 51.4.2 为什么说服务器驱动的Web 开发有害 61.5 为什么需要客户端- 服务器端的Web 应用 71.5.1 代码组织结构/ 软件架构 71.5.2 “设计的灵活性”与“使用开源API” 71.5.3 原型 71.5.4 开发者的效率 81.5.5 应用性能 81.6 小结 9第2 章 JavaScript 和JavaScript 工具 112.1 学习JavaScript 122.2 JavaScript 的历史 132.3 一门函数式语言 142.3.1 作用域 152.3.2 一级函数 162.3.3 函数声明和表达式 172.3.4 函数调用 192.3.5 函数参数 192.3.6 对象 202.4 面向Java 开发者的JavaScript 202.4.1 HelloWord.java 202.4.2 带变量的HelloWord.java 232.5 最佳开发实践 252.5.1 编码规范和约定 252.5.2 浏览器 262.5.3 集成开发环境 262.5.4 单元测试 272.5.5 文档 272.6 项目 27第3 章 REST 和JSON 333.1 什么是REST 343.1.1 资源 343.1.2 动词(HTTP 请求) 343.1.3 统一资源标识符 353.2 REST 约束 363.2.1 客户端- 服务器端 363.2.2 无状态 363.2.3 可缓存 373.2.4 统一接口 373.2.5 分层 383.2.6 按需交付代码 383.3 HTTP 响应代码 383.4 JSON 393.5 HATEOAS 403.6 API 衡量和分类 433.7 函数式编程和REST 433.8 项目 443.9 其他Web API 工具 483.10 约束回顾 48第4 章 Java 工具 494.1 Java 语言 494.2 Java 虚拟机 504.3 Java 工具 514.4 构建工具 524.4.1 Maven 的优点 544.4.2 Maven 的功能 544.4.3 版本控制 554.4.4 单元测试 564.5 处理JSON 的Java 类库 564.6 项目 574.6.1 用Java 处理JSON 574.6.2 用JVM 上的脚本语言处理JSON 594.7 小结 62第5 章 客户端框架 655.1 概述 655.2 起点一:响应式Web 设计 675.2.1 HTML5 Boilerplate 685.2.2 Bootstrap 685.3 起点二:JavaScript 库和框架 695.3.1 浏览器兼容性 695.3.2 框架 695.3.3 功能 705.3.4 流行程度 705.4 获取起始项目 715.4.1 直接从仓库下载 715.4.2 从入门网站下载 715.4.3 IDE 生成的起始项目 725.5 前端工程师的崛起 725.5.1 客户端模板 725.5.2 资源管道 735.5.3 开发流程 745.6 项目 745.7 小结 76第6 章 Java Web API 服务器 776.1 更简单的服务器端解决方案 776.2 基于Java 的服务器 796.2.1 Java HTTP 服务器 796.2.2 Jetty 嵌入式服务器 816.2.3 Restlet 826.2.4 Roo 836.2.5 Netty 嵌入式服务器 876.2.6 Play 服务器 896.2.7 其他轻量级服务器 926.3 基于JVM 的服务器 926.4 Web 应用服务器 936.5 如何在开发中使用946.6 小结 94第7 章 快速开发实践 957.1 开发者的生产率 957.2 优化开发者和团队的工作流程 987.2.1 例子:修复Web 应用 997.2.2 例子:测试集成 1007.2.3 例子:绿地开发 1017.3 生产率和软件开发生命周期 1017.3.1 管理方式和企业文化 1027.3.2 技术架构 1027.3.3 软件工具 1037.3.4 性能 1047.3.5 测试 1047.3.6 底层平台 1057.4 小结 106第8 章 API 设计 1078.1 设计的起点 1088.2 实用的Web API 与REST API 1098.3 指引 1108.3.1 名词即资源,动词即HTTP 行为 1108.3.2 请求参数作为修饰符 1118.3.3 Web API 版本 1128.3.4 HTTP 标头 1138.3.5 链接 1138.3.6 响应 1138.3.7 文档 1138.3.8 格式约定 1148.3.9 安全性 1148.4 项目 1148.4.1 运行项目 1148.4.2 服务端代码 1158.4.3 Curl 和jQuery 1178.5 实践理论 118第9 章 jQuery 和Jython 1199.1 服务端:Jython 1209.1.1 Python Web 服务器 1209.1.2 Jython Web 服务器 1209.1.3 Mock API 1219.2 客户端:jQuery 1229.2.1 DOM 遍历和操作 1229.2.2 实用函数 1239.2.3 效果 1249.2.4 事件处理 1249.2.5 Ajax 1249.3 jQuery 和更高级的抽象 1259.4 项目 1259.4.1 基础HTML 1269.4.2 JavaScript 和jQuery 1269.5 小结 128第10章 JRuby 和Angular 12910.1 服务器端:JRuby 和Sinatra 13010.1.1 工作流 13010.1.2 交互式Ruby shell 13110.1.3 Ruby 版本管理器 13110.1.4 包 13210.1.5 Sinatra 13310.1.6 JSON 处理 13410.2 客户端:AngularJS 13510.2.1 模型 13510.2.2 视图 13510.2.3 控制器 13610.2.4 服务 13610.3 比较jQuery 和Angular 13610.3.1 DOM 和模型操作 13610.3.2 Angular 的不可见性 13710.4 项目 13710.5 小结 143第11 章 打包和部署 14511.1 打包Java 和JEE 应用 14511.2 JEE 应用的部署 14711.2.1 图形界面管理 14811.2.2 命令行管理 15011.3 非JEE 应用的部署 15111.3.1 服务器在应用之外 15211.3.2 服务器和应用并行 15211.3.3 服务器在应用里面 15411.4 不同部署方式带来的影响 15411.4.1 负载均衡 15511.4.2 自动化应用部署 15611.5 项目 15711.5.1 客户端 15711.5.2 服务器端 15811.6 小结 158第12 章 虚拟化 15912.1 全虚拟化 15912.2 虚拟机的实现 16112.2.1 VMWare 16112.2.2 VirtualBox 16112.2.3 Amazon EC2 16112.3 虚拟机的管理 16212.3.1 Vagrant 16212.3.2 Packer 16212.3.3 DevOps 配置管理 16312.4 容器 16312.4.1 LXC 16412.4.2 Docker 16412.5 项目165 上一篇: Adobe After Effects CC高手之路 下一篇: Python 3爬虫、数据清洗与可视化实战