返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • 正版 JavaScript设计模式与开发实践 曾探 人民邮电出版社 978711
  • 新华书店旗下自营,正版全新
    • 作者: 曾探著 | 曾探编 | 曾探译 | 曾探绘
    • 出版社: 人民邮电出版社
    • 出版时间:2014-07-01
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    美阅书店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 曾探著| 曾探编| 曾探译| 曾探绘
    • 出版社:人民邮电出版社
    • 出版时间:2014-07-01
    • 版次:1
    • 印次:30
    • 字数:461000
    • 页数:294
    • 开本:128开
    • ISBN:9787115388889
    • 版权提供:人民邮电出版社
    • 作者:曾探
    • 著:曾探
    • 装帧:平装-胶订
    • 印次:30
    • 定价:69.80
    • ISBN:9787115388889
    • 出版社:人民邮电出版社
    • 开本:128开
    • 印刷时间:暂无
    • 语种:暂无
    • 出版时间:2014-07-01
    • 页数:294
    • 外部编号:11038091
    • 版次:1
    • 成品尺寸:暂无

    目录



    第 一部分 基础知识

    第 1章 面向对象的JavaScript 2

    1.1 动态类型语言和鸭子类型 2

    1.2 多态 4

    1.2.1 一段“多态”的JavaScript

    代码 5

    1.2.2 对象的多态性 5

    1.2.3 类型检查和多态 6

    1.2.4 使用继承得到多态效果 7

    1.2.5 JavaScript的多态 8

    1.2.6 多态在面向对象程序设计中

    的作用 9

    1.2.7 设计模式与多态 11

    1.3 封装 12

    1.3.1 封装数据 12

    1.3.2 封装实现 12

    1.3.3 封装类型 13

    1.3.4 封装变化 13

    1.4 原型模式和基于原型继承的JavaScript

    对象系统 14

    1.4.1 使用克隆的原型模式 14

    1.4.2 克隆是创建对象的手段 15

    1.4.3 体验Io语言 15

    1.4.4 原型编程范型的一些规则 17

    1.4.5 JavaScript中的原型继承 18

    1.4.6 原型继承的未来 22

    1.4.6 小结 23

    第 2章 this、call和apply 24

    2.1 this 24

    2.1.1 this的指向 24

    2.1.2 丢失的this 27

    2.2 call和apply 29

    2.2.1 call和apply的区别 29

    2.2.2 call和apply的用途 30

    第3章 闭包和高阶函数 35

    3.1 闭包 35

    3.1.1 变量的作用域 35

    3.1.2 变量的生存周期 36

    3.1.3 闭包的更多作用 38

    3.1.4 闭包和面向对象设计 40

    3.1.5 用闭包实现命令模式 41

    3.1.6 闭包与内存管理 43

    3.2 高阶函数 44

    3.2.1 函数作为参数传递 44

    3.2.2 函数作为返回值输出 46

    3.2.3 高阶函数实现AOP 47

    3.2.4 高阶函数的其他应用 49

    3.3 小结 58

    第 二部分 设计模式

    第4章 单例模式 60

    4.1 实现单例模式 60

    4.2 透明的单例模式 61

    4.3 用代理实现单例模式 62

    4.4 JavaScript中的单例模式 63

    4.5 惰性单例 65

    4.6 通用的惰性单例 68

    4.7 小结 70

    第5章 程序员与算法 71

    5.1 使用策略模式计算奖金 72

    5.2 JavaScript版本的策略模式 75

    5.3 多态在策略模式中的体现 76

    5.4 使用策略模式实现缓动动画 76

    5.4.1 实现动画效果的原理 76

    5.4.2 思路和一些准备工作 77

    5.4.3 让小球运动起来 77

    5.5 更广义的“算法” 80

    5.6 表单校验 80

    5.6.1 表单校验的第 一个版本 80

    5.6.2 用策略模式重构表单校验 81

    5.6.3 给某个文本输入框添加多种

    校验规则 83

    5.7 策略模式的优缺点 86

    5.8 一等函数对象与策略模式 86

    5.9 小结 87

    第6章 代理模式 88

    6.1 第 一个例子——小明追MM的故事 88

    6.2 保护代理和虚拟代理 91

    6.3 虚拟代理实现图片预加载 91

    6.4 代理的意义 93

    6.5 代理和本体接口的一致性 94

    6.6 虚拟代理合并HTTP请求 95

    6.7 虚拟代理在惰性加载中的应用 97

    6.8 缓存代理 99

    6.8.1 缓存代理的例子——计算

    乘积 99

    6.8.2 缓存代理用于ajax异步请

    求数据 100

    6.9 用高阶函数动态创建代理 100

    6.10 其他代理模式 101

    6.11 小结 102

    第7章 迭代器模式 103

    7.1 jQuery中的迭代器 103

    7.2 实现自己的迭代器 104

    7.3 内部迭代器和外部迭代器 104

    7.4 迭代类数组对象和字面量对象 106

    7.5 倒序迭代器 106

    7.6 中止迭代器 107

    7.7 迭代器模式的应用举例 107

    7.8 小结 109

    第8章 发布—订阅模式 110

    8.1 现实中的发布—订阅模式 110

    8.2 发布—订阅模式的作用 110

    8.3 DOM事件 111

    8.4 自定义事件 112

    8.5 发布—订阅模式的通用实现 113

    8.6 取消订阅的事件 115

    8.7 真实的例子——网站登录 115

    8.8 全局的发布—订阅对象 117

    8.9 模块间通信 119

    8.10 必须先订阅再发布吗 120

    8.11 全局事件的命名冲突 121

    8.12 JavaScript实现发布—订阅模式的

    便利性 124

    8.13 小结 124

    第9章 命令模式 125

    9.1 命令模式的用途 125

    9.2 命令模式的例子——菜单程序 126

    9.3 JavaScript中的命令模式 128

    9.4 撤销命令 130

    9.5 恢复命令日志 132

    9.6 命令队列 133

    9.7 宏命令 134

    9.8 智能命令与傻瓜命令 135

    9.9 小结 136

    第 10章 组合模式 137

    10.1 回顾宏命令 138

    10.2 组合模式的用途 139

    10.3 请求在树中传递的过程 139

    10.4 更强大的宏命令 140

    10.5 抽象类在组合模式中的作用 143

    10.6 透明性带来的安全问题 144

    10.7 组合模式的例子——扫描文件夹 145

    10.8 一些值得注意的地方 147

    10.9 引用父对象 148

    10.10 何时使用组合模式 150

    10.11 小结 150

    第 11章 模板方法模式 151

    11.1 模板方法模式的定义和组成 151

    11.2 第 一个例子Coffee or Tea 151

    11.2.1 先泡一杯咖啡 152

    11.2.2 沏一壶茶 152

    11.2.3 分离出共同点 153

    11.2.4 创建Coffee子类和Tea

    子类 154

    11.3 抽象类 156

    11.3.1 抽象类的作用 156

    11.3.2 抽象方法和具体方法 156

    11.3.3 用Java实现Coffee or Tea的例子 157

    11.3.4 JavaScript没有抽象类的

    缺点和变通 158

    11.4 模板方法模式的使用场景 159

    11.5 钩子方法 160

    11.6 好莱坞原则 162

    11.7 真的需要“继承”吗 162

    11.8 小结 164

    第 12章 享元模式 165

    12.1 初识享元模式 165

    12.2 内部状态与外部状态 166

    12.3 享元模式的通用结构 167

    12.4 文件上传的例子 167

    12.4.1 对象爆炸 168

    12.4.2 享元模式重构文件上传 170

    12.4.3 剥离外部状态 170

    12.4.4 工厂进行对象实例化 171

    12.4.5 管理器封装外部状态 171

    12.5 享元模式的适用性 173

    12.6 再谈内部状态和外部状态 173

    12.6.1 没有内部状态的享元 173

    12.6.2 没有外部状态的“享元” 174

    12.7 对象池 175

    12.7.1 对象池实现 175

    12.7.2 通用对象池实现 177

    12.8 小结 178

    第 13章 职责链模式 179

    13.1 现实中的职责链模式 179

    13.2 实际开发中的职责链模式 180

    13.3 用职责链模式重构代码 181

    13.4 灵活可拆分的职责链节点 183

    13.5 异步的职责链 184

    13.6 职责链模式的优缺点 185

    13.7 用AOP实现职责链 186

    13.8 用职责链模式获取文件上传对象 187

    13.9 小结 188

    第 14章 中介者模式 189

    14.1 现实中的中介者 190

    14.2 中介者模式的例子——泡泡堂游戏 191

    14.2.1 为游戏增加队伍 192

    14.2.2 玩家增多带来的困扰 194

    14.2.3 用中介者模式改造泡泡堂

    游戏 194

    14.3 中介者模式的例子——购买商品 199

    14.3.1 开始编写代码 201

    14.3.2 对象之间的联系 202

    14.3.3 可能遇到的困难 203

    14.3.4 引入中介者 205

    14.4 小结 207

    第 15章 装饰者模式 209

    15.1 给对象动态添加职责 210

    15.2 模拟传统面向对象语言的装饰者

    模式 210

    15.3 装饰者也是包装器 211

    15.4 回到JavaScript的装饰者 212

    15.5 装饰函数 213

    15.6 用AOP装饰函数 215

    15.7 AOP的应用实例 217

    15.7.1 数据统计上报 217

    15.7.2 统计函数执行时间 218

    15.7.3 用AOP动态改变函数的

    参数 219

    15.7.4 插件式的表单验证 221

    15.8 装饰者模式和代理模式 224

    15.9 小结 224

    第 16章 状态模式 225

    16.1 初识状态模式 225

    16.1.1 第 一个例子:电灯程序 226

    16.1.2 状态模式改进电灯程序 227

    16.2 状态模式的定义 231

    16.3 状态模式的通用结构 231

    16.4 缺少抽象类的变通方式 232

    16.5 另一个状态模式示例——文件

    上传 233

    曾探,2007年毕业于吉林大学软件学院。就职于国内知名前端团队腾讯AlloyTeam,高 级工程师。
    曾参与Web QQ、QQ群、Q+开发 者网站、微云、QQ兴趣部落等大型前端项目的开发。有过Java、Python和JavaScript的开发经验,业余作品有HTML5版街头霸王等。
    平时喜欢电影和音乐,业余时间也是一名健身教练。

    腾讯前端Alloy Team团队出品,资 深前端架构师曾探力作
    全面涵盖专门针对JavaScript的16个设计模式
    深入剖析面向对象设计原则、编程技巧及代码重构

    设计模式是软件设计中经过了大量实际项目验证的可复用的优 秀解决方案,它有助于程序员写出可复用和可维护性高的程序。许多优 秀的JavaScript开源框架都运用了不少设计模式,越来越多的程序员从设计模式中获益,也许是改善了自己编写的某个软件,也许是更好地理解了面向对象的编程思想。无论如何,系统地学习设计模式都会令你受益匪浅。

    本书在尊重《设计模式》原意的同时,针对JavaScript语言特性全面介绍了更适合JavaScript程序员的了16个常用的设计模式,讲解了JavaScript面向对象和函数式编程方面的基础知识,介绍了面向对象的设计原则及其在设计模式中的体现,还分享了面向对象编程技巧和日常开发中的代码重构。本书将教会你如何把经典的设计模式应用到JavaScript语言中,编写出优美高效、结构化和可维护的代码。

    本书是根据JavaScript语言的特性专门针对JavaScript语言全面总结的设计模式。全书共分为三个部分,第 一部分讲解了JavaScript语言面向对象和函数式编程的知识及其在设计模式方面的作用;第 二部分通过一步步完善的代码示例,由浅入深地讲解了16个设计模式;第三部分讲述了面向对象的设计原则及其在设计模式中的体现,以及一些常见的面向对象编程技巧和日常开发中的代码重构。

    书中所有示例均来自作者长期的开发实践,与实际开发密切相关,适合初、中、高 级Web前端开发人员阅读,尤其适合想往架构师晋级的中高 级程序员。

    腾讯前端Alloy Team团队出品,资 深前端架构师曾探力作 全面涵盖专门针对JavaScript的16个设计模式 深入剖析面向对象设计原则、编程技巧及代码重构 设计模式是软件设计中经过了大量实际项目验证的可复用的优 秀解决方案,它有助于程序员写出可复用和可维护性高的程序。许多优 秀的JavaScript开源框架都运用了不少设计模式,越来越多的程序员从设计模式中获益,也许是改善了自己编写的某个软件,也许是更好地理解了面向对象的编程思想。无论如何,系统地学习设计模式都会令你受益匪浅。 本书在尊重《设计模式》原意的同时,针对JavaScript语言特性全面介绍了更适合JavaScript程序员的了16个常用的设计模式,讲解了JavaScript面向对象和函数式编程方面的基础知识,介绍了面向对象的设计原则及其在设计模式中的体现,还分享了面向对象编程技巧和日常开发中的代码重构。本书将教会你如何把经典的设计模式应用到JavaScript语言中,编写出优美、结构化和可维护的代码。

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购