JavaScript编程实战txt,chm,pdf,epub,mobi下载 作者:[美] Jon Raasch 出版社: 人民邮电出版社 原作名: JavaScript programming: pushing the limits 译者:吴海星 出版年: 2014-3 页数: 320 定价: 59.00 装帧: 平装 ISBN: 9787115345486 内容简介 · · · · · ·JavaScript的快速演进带来了更新更快的JavaScript虚拟机以及各种框架,不仅使得它在服务器端的Web程序开发中日益普及,同时也推动了适用于移动设备的富JavaScript程序的开发。 本书由浅入深,语言活泼易懂,旨在帮助读者轻松构建实际应用。而且,书中对于JavaScript秘密特性的深入挖掘,会重塑你原本精湛的技能结构,让你构建出巧妙复杂的应用。 本书特色如下。 广:涵盖内容广泛,包括如何构建backbone应用、JavaScript模板的重要性、Node.js和MongoDB、使用WebGL/Three.js库渲染3D图形,以及如何将桌面应用转换为专门的移动端应用,等等。 深:对一些JavaScript相关的高级主题进行深入解析,这些主题是你在其他JS开发的书中通常难以找到的。 全:除了详细讲解的内容,每章最后还提供了丰富的补充资源... 作者简介 · · · · · ·作者简介: Jon Raasch Web 开发专家。用户体验重度关注者,坚信只要满足了用户的需求,商业目标就能随之达成。除本书外,还著有Smashing WebKit和Smashing Mobile Web Development。现居住在美国俄勒冈州波特兰市。Twitter账号:jonraasch。个人网站:jonraasch.com。 译者简介: 吴海星 2001年毕业于南京理工大学。编程数载代码不过十万,翻译几年码字不过百万。项目不过十几个,带队不到五十人。年过而立,惴惴不安,愈加发奋,孜孜求学,愿凭绵薄之力,贡献于IT社区。除此书外,还译有《量化:大数据时代的企业管理》、《Java程序员修炼之道》。 目录 · · · · · ·第一部分 坚实的基础第1章 最佳实践 2 1.1 松耦合 2 1.1.1 紧耦合的问题 2 1.1.2 松耦合的优势 3 1.2 JavaScript MVC和模板 3 · · · · · ·() 第一部分 坚实的基础 第1章 最佳实践 2 1.1 松耦合 2 1.1.1 紧耦合的问题 2 1.1.2 松耦合的优势 3 1.2 JavaScript MVC和模板 3 1.2.1 MVC 3 1.2.2 模板 5 1.3 开发工具 6 1.3.1 WebKit开发人员工具 6 1.3.2 Weinre 10 1.3.3 版本控制 12 1.3.4 CSS预处理 12 1.4 测试 12 1.4.1 使用Grunt 13 1.4.2 使用QUnit 17 1.5 小结 20 1.6 补充资源 21 第2章 库、框架与插件 22 2.1 选择恰当的JavaScript库 22 2.1.1 jQuery 22 2.1.2 Zepto 24 2.1.3 普通的DOM 25 2.2 使用框架 27 2.2.1 Bootstrap 27 2.2.2 jQuery UI 28 2.2.3 移动框架 28 2.3 其他脚本 28 2.3.1 Modernizr 28 2.3.2 HTML5 Shiv 29 2.4 HTML5样板 29 2.5 寻找jQuery插件 30 2.5.1 去哪里(以及不要去哪里)找 30 2.5.2 要找什么——一个十项检查列表 30 2.6 小结 32 2.7 补充资源 32 第二部分 构建前端 第3章 Backbone.js 36 3.1 初识Backbone 36 3.1.1 Backbone是什么 36 3.1.2 为什么要用Backbone 36 3.1.3 Backbone基础 37 3.1.4 什么时候用Backbone 37 3.1.5 设置Backbone 38 3.2 Backbone中的模型 38 3.2.1 创建一个模型 39 3.2.2 创建计算属性 39 3.2.3 设置默认值 39 3.2.4 使用初始化函数 40 3.2.5 使用Backbone事件 40 3.2.6 模型的校验 41 3.3 使用Backbone中的集合 42 3.3.1 创建集合 42 3.3.2 创建集合事件 43 3.4 理解Backbone视图 43 3.4.1 创建视图 44 3.4.2 使用渲染函数 44 3.4.3 使用Backbone中的视图元素 46 3.4.4 使用嵌套视图 49 3.5 数据的保存及获取 55 3.5.1 与服务器上的模型同步 55 3.5.2 在Backbone中使用LocalStorage API 58 3.5.3 把集合保存在服务器上 59 3.5.4 使用Backbone.sync 65 3.6 使用路由控制器 66 3.6.1 路由如何使用 66 3.6.2 设置路由控制器 67 3.6.3 PushState与Hashchange 69 3.7 再谈事件 70 3.7.1 事件解绑定 71 3.7.2 手动触发事件 71 3.7.3 绑定“this” 71 3.7.4 All事件 72 3.8 操作集合 73 3.8.1 取出集合中的条目 73 3.8.2 集合排序 74 3.9 小结 76 3.10 补充资源 77 第4章 使用JavaScript模板 78 4.1 认识模板 78 4.1.1 为什么使用模板 78 4.1.2 了解不同的模板库 79 4.1.3 做出正确的选择 80 4.2 使用Underscore模板 81 4.2.1 Underscore模板基础知识 81 4.2.2 重温模板的最佳实践 83 4.2.3 在模板中使用JavaScript 85 4.3 在Backbone中使用模板 88 4.3.1 不用模板设置模型和视图 88 4.3.2 用模板渲染视图 89 4.4 小结 92 4.5 补充资源 92 第5章 创建表单 93 5.1 理解渐进式增强 93 5.1.1 渐进式增强方式 93 5.1.2 为什么要渐进式增强 94 5.1.3 决定支持哪个环境 94 5.2 让HTML5替你工作 95 5.2.1 HTML5的输入控件类型 95 5.2.2 交互特性 102 5.3 给老浏览器用Polyfill 104 5.3.1 寻找第三方Polyfill 105 5.3.2 编写自己的Polyfill 105 5.4 连接REST API 112 5.4.1 提交表单 113 5.4.2 构建通用函数 114 5.5 Backbone中的表单 115 5.5.1 设置表单模型 115 5.5.2 设置表单视图 116 5.5.3 将表单域保存到模型中 117 5.5.4 添加校验 118 5.5.5 清理模板 123 5.5.6 必填项 124 5.5.7 提交表单 126 5.5.8 合并代码 128 5.6 小结 132 5.7 补充资源 132 第三部分 编写服务器端JavaScript 第6章 Node.js简介 136 6.1 为什么是Node 136 6.1.1 在实时程序中使用Node 136 6.1.2 Node的工作机制 137 6.2 安装Node 138 6.2.1 在Mac/Linux上安装 138 6.2.2 在Windows上安装 139 6.2.3 检查安装情况 140 6.3 Node入门 140 6.3.1 创建服务器 140 6.3.2 添加内容 141 6.3.3 打包 141 6.3.4 运行脚本 142 6.3.5 简化脚本 143 6.3.6 使用Node REPL 143 6.4 Node模块 145 6.4.1 引入模块 145 6.4.2 外部模块和NPM 146 6.4.3 寻找模块 147 6.5 Node 模式 148 6.5.1 模块和全局变量 148 6.5.2 异步模式 152 6.5.3 事件 154 6.5.4 子进程 155 6.6 小结 158 6.7 补充资源 158 第7章 Express框架 160 7.1 Express入门 160 7.1.1 安装Express 160 7.1.2 创建Express程序 160 7.2 设置路由 161 7.2.1 已有路由 162 7.2.2 创建新的路由 163 7.2.3 POST、PUT和DELETE 163 7.3 渲染视图 164 7.3.1 启用Underscore模板 164 7.3.2 创建视图 166 7.4 处理表单数据 172 7.4.1 创建POST路由 172 7.4.2 将反馈发给模板 173 7.5 发封邮件 178 7.5.1 连到SMTP服务器上 178 7.5.2 构建Email消息 179 7.5.3 发送邮件 179 7.5.4 在结束之前 180 7.6 小结 182 7.7 补充资源 182 第8章 MongoDB 184 8.1 NoSQL数据库有什么好处 184 8.1.1 扩展能力 184 8.1.2 简单性 184 8.2 MongoDB入门 185 8.2.1 安装MongoDB 185 8.2.2 运行MongoDB 186 8.2.3 安装MongoDB模块 187 8.2.4 创建数据库 187 8.3 MongoDB中的CRUD 188 8.3.1 创建集合 188 8.3.2 读取数据 190 8.3.3 更新数据 194 8.3.4 删除数据 196 8.4 Mongoose 197 8.4.1 Mongoose入门 197 8.4.2 创建模型 198 8.4.3 读取数据 200 8.5 数据库上的其他选择 204 8.6 小结 204 8.7 补充资源 204 第四部分 挑战极限 第9章 用WebSockets构建实时程序 208 9.1 WebSockets的工作机制 208 9.1.1 轮询的问题 208 9.1.2 WebSockets方案 209 9.2 Socket.IO入门 210 9.2.1 服务器上的Socket.IO 210 9.2.2 客户端的Socket.IO 211 9.3 构建实时的聊天室 212 9.3.1 创建聊天室视图 212 9.3.2 将消息提交给服务器 214 9.3.3 在服务器端处理消息 215 9.3.4 在客户端显示新消息 216 9.3.5 添加Backbone.js结构 217 9.3.6 添加用户 223 9.3.7 添加时间戳 225 9.3.8 保存到MongoDB中 227 9.3.9 合并代码 229 9.4 小结 233 9.5 补充资源 234 第10章 进入移动领域 235 10.1 搭建移动App 235 10.1.1 检测移动终端 235 10.1.2 设置移动端网站的样式 237 10.1.3 移动端框架 238 10.2 集成触屏 238 10.2.1 基本触摸事件 239 10.2.2 复杂的触摸手势 239 10.3 Geolocation 248 10.3.1 找到用户的位置 248 10.3.2 连接Google地图 249 10.3.3 追踪Geolocation的变化 251 10.4 电话号码和短信 251 10.4.1 静态的电话号码和SMS链接 251 10.4.2 用JavaScript拨打电话和发送短信 252 10.5 PhoneGap 252 10.5.1 PhoneGap的优与劣 253 10.5.2 PhoneGap入门 254 10.5.3 连接相机 254 10.5.4 连接通讯录 254 10.5.5 其他API 255 10.6 小结 255 10.7 补充资源 255 第11章 JavaScript图形 257 11.1 画布基础 257 11.1.1 画出基本的形状 258 11.1.2 让画布动起来 260 11.1.3 画布中的鼠标事件 261 11.2 SVG基础 261 11.2.1 让SVG动起来 262 11.2.2 SVG鼠标事件 262 11.2.3 编码SVG 263 11.3 Rapha?l.js 263 11.3.1 作画路径 264 11.3.2 画曲线 265 11.3.3 样式 266 11.3.4 动画 268 11.3.5 鼠标事件 269 11.4 用gRapha?l做图表 270 11.4.1 饼图 270 11.4.2 柱状图 271 11.4.3 折线图 273 11.5 带WebGL的3D画布 276 11.5.1 Three.js简介 276 11.5.2 创建图像纹理 280 11.5.3 3D动画 281 11.5.4 添加鼠标事件 282 11.5.5 使用备选的2D画布 283 11.6 CSS中的3D变换 284 11.7 小结 286 11.8 补充资源 286 第12章 推出你的程序 288 12.1 性能检查表 288 12.1.1 重点在哪 288 12.1.2 资源管理 290 12.1.3 动画优化 291 12.1.4 少做为妙 295 12.1.5 规避回流 295 12.2 部署 296 12.2.1 把静态资源部署在CDN上 296 12.2.2 把Node服务部署在EC2上 297 12.3 推出 297 12.4 补充资源 297 附录A 用LESS做CSS预处理 299 A.1 LESS简介 299 A.1.1 预处理的好处 299 A.1.2 安装LESS编译器 300 A.1.3 在服务器上编译 300 A.2 LESS的基础知识 300 A.2.1 变量 300 A.2.2 操作符 301 A.2.3 嵌套 302 A.3 函数和Mixin 304 A.3.1 函数 304 A.3.2 Mixin 305 A.4 文件结构 306 A.4.1 使用Import 306 A.4.2 文件结构示例 306 A.4.3 定制结构 307 A.5 小结 307 A.6 补充资源 307 · · · · · · () "JavaScript编程实战"试读 · · · · · ·坚实的基础对任何应用程序来说都至关重要。在写代码之前,必须先对应用程序的架构加以规范。程序有什么功能,将会如何实现?更重要的是这些功能彼此之间如何协作,换句话说,程序的体系是什么样的?要回答这些问题,需要搞研究、做原型,并有坚实的最佳实践基础。尽管我不能帮你研究或实现程序中某些组件的原型,但我可以把从最佳实践中取得的经验传授给你。本章介绍了松耦合的基本工... |
内容还是很好的
现在终于有机会看看这本书
比较有兴趣
原以为会很枯燥