《javascript模式》是由jayascript专家stoyan stefanov撰写,stoyan是yahoo公司的资深技术员,他还是yslow 2.0(一个web性能优化工具)的技术架构师。本书包含了实现每个讨论的模式的实践建议,并附有数个可以立即上手的范例。同时还可以学到一些反模式,一些常见的编程方式,这些编程方式引发的问题比解决的还要多。
什么是使用javascript开发应用程序最好的方法呢?本书将使用大量javascript编码模式和最佳实践来帮您回答该问题。如果您是一名有经验的开发人员,正在寻找与对象、函数、继承以及其他特定语言分类相关的解决方案,那么本书中的抽象方案和代码模板将是十分理想的指南,无论您正在使用javascript编写客户端、服务端抑或是桌面应用程序。
目录
- 前言
- 第1章简介
- 模式
- javascript:基本概念
- ecmascript 5
- jslint
- console
- 第2章基本技巧
- 编写可维护的代码
- 尽量少用全局变量
- for循环
- for-in循环
- 不要增加内置的原型
- switch模式
- 避免使用隐式类型转换
- 使用parseint()的数值约定
- 编码约定
- 命名约定
- 编写注释
- .编写api文档
- 编写可读性强的代码
- 同行互查
- 在正式发布时精简代码
- 运行jslint
- 小结
- 第3章字面量和构造函数
- 对象字面量
- 自定义构造函数
- 强制使用new的模式
- 数组字面量
- json
- 正则表达式字面量
- 基本值类型包装器
- 错误对象
- 小结
- 第4章函数
- 背景
- 回调模式
- 返回函数
- 自定义函数
- 即时函数
- 即时对象初始化
- 初始化时分支
- 函数属性——备忘模式
- 配置对象
- curry
- 小结
- 第5章对象创建模式
- 命名空间模式
- 声明依赖关系
- 私有属性和方法
- 模块模式
- 沙箱模式
- 静态成员
- 对象常量
- 链模式
- method()方法
- 小结
- 第6章代码复用模式
- 传统与现代继承模式的比较
- 使用类式继承时的预期结果
- 类式继承模式#1——默认模式
- 类式继承模式#2——借用构造函数
- 类式继承模式#3——借用和设置原型
- 类式继承模式#4——共享原型
- 类式继承模式#51临时构造函数
- klass
- 原型继承
- 通过复制属性实现继承
- 借用方法
- 小结
- 第7章设计模式
- 单体模式
- 工厂模式
- 迭代器模式
- 装饰者模式
- 策略模式
- 外观模式
- 代理模式
- 中介者模式
- 观察者模式
- 小结
- 第8章dom和浏览器模式
- 关注分离
- dom脚本
- 事件
- 长期运行脚本
- 远程脚本
- 配置javascript
- 载入策略
- 小结
最近正在复习这本书,满眼的干货,实在。
当初是看完object-oriented javascript这本书之后接着看了这本,两本书真是一脉相承,但是这本更少涉及基础,强调实战提升,多是建立在js语言独有特性上的pattern的总结分析,什么代码规范啦,设计模式啦,都有涉及。
还有很多一般注意不到的js特性夹杂其中哦,比如function declaration的hoisting特性,看完了才真正搞明白了为什么coffeescript的class的转译代码可以那样写的。
非常称赞的一本书,算是JS语言的最佳实践了(可以结合着那本《Javascript语言精粹》来看,都算JS进阶书了)。
特别出彩的是作者很多模式的讲解都是渐进式的(比如继承这块内容),先写一个简单的实现,然后指出该方法的优缺点,后面再用另一个思路去完善。在阅读过程中,这样渐进式的讲解方式也很容易让读者跟着去思考并强化理解,非常值得称道。
个人感觉翻译也没大家说的那么差,至少不影响理解,还是值得肯定的。全书就200页,读起来也不会有压力,一周上下班零散时间翻翻也就看过了。
确实是好书,但是当初放到github上了,过了1个晚上就消失了,然后我捶胸顿足了好一会儿,后悔只star了,没fork。。。