JavaScript开发框架权威指南

JavaScript开发框架权威指南
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2017-04
版次: 01
ISBN: 9787115447197
定价: 89.00
装帧: 平装
开本: 16开
页数: 386页
正文语种: 简体中文
10人买过
  • JavaScript是现代Web开发必不可少的编程语言,但JavaScript的生态系统包括库、框架以及工具都在快速地发展且日益庞大。程序员学习的需求和面临的挑战也相应地增加。
    JavaScript开发框架quanwei指南涵盖了在开发过程中常用的各种JavaScript工具,以帮助读者在大量流行的JavaScript工具中做选择。全书分为16章,从开发工具、模块加载器、客户端框架、服务端框架数据库交互、通信、管理控制流和其他有用框架等几个方面,涵盖了Bower、Grunt、Yeoman、PM2、RequireJS、Browserify、Knockout、AngularJS、Kraken、Mach、Mongoose、Knex、Bookshelf、Faye、Q、Async.js、Underscore和 Lodash等框架和库。全书涵盖了客户端和服务器端的开发,通过细致的讲解、详细的代码示例,阐明了这些工具的用法。
    JavaScript是现代Web开发必不可少的编程语言,但JavaScript的生态系统包括库、框架以及工具都在快速地发展且日益庞大。程序员学习的需求和面临的挑战也相应地增加。 Tim Ambler是来自美国田纳西州那什维尔的一名软件工程师。他对编程的热情来自于父亲。在他小的时候,他的父亲就向他介绍了Commodore 64电脑。Tim 是几个流行的开源项目的作者,其中whenLive已经被GitHub员工采用。作为会议演说家和多产的作家,Tim多次被在线出版物推荐,如JavaScript Weekly和Node Weekly。Tim目前与他的妻子和2只猫生活在南部。读者可以在Twitter上 @tkambler 关注他。

    Nicholas Cloud是一名软件工程师,居住在非常潮湿的城市圣路易斯。过去十几年里,他利用自己的技能成就一番成功事业。通过JavaScript、C+和PHP,他开发了大量适用于多终端的Web应用、Web服务、桌面应用。Nicholas是开源软件的有力支持者,致力于userland项目,并写了几个自己的开源库。在业余时间,他在不同的用户组发言、参加会议、写书、写技术文章、写博客。他的Twitter是@nicholascloud。 目 录





    第1章 Bower 1
    1.1 准备工作 1
    1.2 配置Bower 2
    1.3 清单文件(Manifest) 2
    创建新的清单文件 3
    1.4 查找、添加和删除Bower包 3
    1.4.1 查找包 3
    1.4.2 添加包 3
    1.4.3 删除包 5
    1.5 语义化版本控制 5
    1.6 维护依赖链 6
    1.7 创建Bower包 7
    1.7.1 选择有效的包名 7
    1.7.2 使用语义化版本(Semver)的
    Git标签 7
    1.7.3 将软件包发布到注册中心 7
    1.8 小结 8
    第2章 Grunt 9
    2.1 安装Grunt 10
    2.2 Grunt是如何工作的 10
    2.2.1 Gruntfile.js 10
    2.2.2 任务(Tasks) 11
    2.2.3 插件(Plugins) 11
    2.2.4 配置 12
    2.3 将Grunt添加到项目中 12
    保持合理的Grunt结构 12
    2.4 与任务共舞 14
    2.4.1 配置管理 14
    2.4.2 任务描述 15
    2.4.3 异步任务 15
    2.4.4 任务依赖 16
    2.4.5 多任务 16
    2.4.6 多任务中的Options 17
    2.7 模板配置 18
    2.4.8 命令行选项 19
    2.4.9 提供反馈 19
    2.4.10 错误处理 20
    2.5 操作文件系统 20
    2.5.1 源-目标映射 20
    2.5.2 监视文件变化 22
    2.6 创建Grunt插件 25
    2.6.1 开始 25
    2.6.2 创建任务 26
    2.6.3 将任务发布到npm 28
    2.7 总结 28
    2.8 相关资源 29
    第3章 Yeoman 30
    3.1 安装Yeoman 30
    3.2 创建第一个项目 30
    3.2.1 子命令 33
    3.3 创建你的第一个脚手架 34
    3.3.1 Yeoman脚手架是一个Node
    模块 34
    3.3.2 子脚手架 35
    3.3.3 定义二级命令 39
    3.3.4 可组合性 41
    3.4 小结 41
    3.5 相关资源 42
    第4章 PM2 43
    4.1 安装 43
    4.2 与进程一起工作 43
    4.2.1 从错误中恢复 46
    4.2.2 监控文件变化 47
    4.3 监控日志 48
    4.4 监控资源占用 49
    4.41 监控本地资源 49
    4.4.2 监控远程资源 49
    4.5 进程的高级管理 52
    4.5.1 通过JSON方式配置应用 52
    4.6 多核处理器的负载均衡 55
    4.6.1 0秒宕机的部署方式 57
    4.7 小结 59
    4.8 相关资源 59
    第5章 RequireJS 60
    5.1 运行示例 61
    5.2 使用RequireJS 61
    5.2.1 安装 62
    5.2.2 配置 62
    5.2.3 应用模块和依赖 64
    5.2.4 路径和别名 66
    5.2.5 Shims 69
    5.2.6 加载器插件 73
    5.2.7 缓存清除 78
    5.3 RequireJS优化 80
    5.3.1 配置 r.js 80
    5.3.2 运行r.js命令 81
    5.4 小结 82
    第6章 Browserify 84
    6.1 AMD API与CommonJS对比 84
    6.2 安装Browserify 85
    6.3 创建你的第一个Bundle 85
    6.4 可视化依赖树 87
    6.5 发生变化时重新打包文件 88
    6.5.1 通过Grunt监听文件变化 88
    6.5.2 通过Watchify监听文件
    变化 88
    6.6 使用多个打包文件 90
    6.7 Node方式 92
    6.7.1 模块解析方案和NODE_PATH
    环境变量 93
    6.7.2 依赖管理 95
    6.8 定义浏览器指定模块 96
    6.9 用Transforms扩展Browserify 97
    6.9.1 brfs 97
    6.9.2 folderify 98
    6.9.3 bulkify 98
    6.9.4 Browserify-Shim 99
    6.10 小结 100
    6.11 相关资源 100
    第7章 Knockout 101
    7.1 View、Model与View Model 102
    7.1.1 菜谱列表 103
    7.1.2 菜谱详情 106
    7.2 绑定视图模型到DOM 108
    7.3 视图模型与表单 109
    7.3.1 切换到“编辑”模式 109
    7.3.2 更改菜谱的标题 112
    7.3.3 更改菜谱的Serving与
    Cooking Time 112
    7.3.4 添加与删除食材 114
    7.3.5 操作步骤 118
    7.3.6 引文 119
    7.4 自定义组件 120
    7.4.1 input-list组件的视图模型 120
    7.4.2 input-list模板 121
    7.4.3 注册input-list组件 123
    7.5 Subscribable: 简单的消息传递 124
    7.6 小结 126
    7.7 相关资源 127
    第8章 AngularJS 128
    8.1 声明式Web编程 128
    8.1.1 命令式编程 128
    8.1.2 声明式编程 129
    8.2 Module:创建松散耦合程序的基石 130
    8.3 指令:DOM的抽象 132
    8.4 加入逻辑 134
    8.4.1 Scope与原型继承 134
    8.4.2 用Controller操作Scope 135
    8.5 通过Service与依赖注入(DI)
    实现松散耦合 138
    8.5.1 依赖注入 138
    8.5.2 简单的Controller与复杂的
    Service 139
    8.6 创建路由 142
    8.6.1 路由参数 143
    8.6.2 路由的Resolve 144
    8.7 创建复杂表单 145
    8.7.1 表单验证 146
    8.7.2 条件逻辑 150
    8.7.3 列表 151
    8.8 小结 153
    8.9 相关资源 154
    第9章 Kraken 155
    9.1 环境感知的配置 156
    9.2 注册基于配置的中间件 162
    9.3 结构化路由注册 165
    9.3.1 索引配置 165
    9.3.2 目录配置 166
    9.3.3 路由配置 167
    9.4 Dust模板 169
    9.4.1 上下文及引用 169
    9.4.2 片段 171
    9.4.3 迭代 172
    9.4.4 条件句 173
    9.4.5 局部模板 173
    9.4.6 块 174
    9.4.7 过滤器 175
    9.4.8 上下文辅助器 176
    9.4.9 Dust辅助器 182
    9.4.10 使用Kraken 186
    9.5 小结 200
    9.6 相关资源 200
    第10章 Mach 202
    10.1 章节例子 202
    10.2 安装 203
    10.3 Mach - Web服务 203
    10.3.1 HTTP路由 205
    10.3.2 建立连接 210
    10.3.3 公共的中间件 212
    10.3.4 路由重写 226
    10.3.5 主机映射 228
    10.3.6 自定义中间件 232
    10.4 Mach-HTTP客户端 234
    10.5 Mach - HTTP代理 236
    10.6 小结 239
    第11章 Mongoose> 240
    11.1 MongoDB的基本概念 240
    11.2 Mongoose的一个简单示例 243
    11.2.1 针对JSON数据创建一个
    Mongoose模式 243
    11.2.2 使用Mongoose导入数据 244
    11.2.3 通过Mongoose查询数据 247
    11.3 使用结构(Schemas) 248
    11.3.1 数据类型 248
    11.3.2 嵌套结构 250
    11.3.3 默认属性值 250
    11.3.4 必要属性 251
    11.3.5 辅助索引 251
    11.3.6 结构校验 252
    11.3.7 结构引用 255
    11.3.8 结构中间件 258
    11.4 使用模型和文档 259
    11.4.1 文档实例方法 262
    11.4.2 文档虚拟 263
    11.4.3 静态模型方法 265
    11.5 使用查询 266
    11.5.1 Model.find() 266
    11.5.2 使用查询运算符查找文档 272
    11.6 小结 278
    第12章 Knex和Bookshelf 279
    12.1 Knex 279
    12.1.1 安装命令行工具 280
    12.1.2 把Knex添加到你的项目 280
    12.1.3 配置Knex 280
    12.1.4 SQL查询构建器 281
    12.1.5 迁移脚本 287
    12.1.6 种子脚本 291
    12.2 Bookshelf 291
    12.2.1 什么是对象映射关系? 292
    12.2.2 创建Bookshelf模型 292
    12.2.3 关系 299
    12.3 小结 306
    12.4 相关资源 307
    第13章 Faye 308
    13.1 HTTP、Bayeux和WebSocket 308
    13.1.1 WebSocket 310
    13.1.2 Bayeux协议 310
    13.2 开始使用Faye 312
    13.3 发布/订阅消息系统 313
    13.4 小结 318
    13.5 相关资源 318
    第14章 Q 319
    14.1 时间就是一切 319
    14.2 Promise对比回调函数 322
    14.3 Q的Promise 324
    14.3.1 Deferreds 和 Promises 324
    14.3.2 值和错误 328
    14.3.3 报告进度 333
    14.3.4 终点 336
    14.4 控制流 338
    14.4.1 顺序流 338
    14.4.2 平行流 339
    14.4.3 管道流 341
    14.5 小结 342
    14.6 相关资源 343
    第15章 Async.js 344
    15.1 顺序流 345
    15.2 并行流 346
    15.3 管线流 348
    15.4 循环流 352
    15.4.1 为真则循环执行 352
    15.4.2 为假则循环执行 354
    15.4.3 循环重试 355
    15.4.4 无限循环 357
    15.5 批处理流 358
    15.5.1 异步队列 358
    15.5.2 异步负载 359
    15.6 小结 361
    第16章 Underscore和Lodash 362
    16.1 安装及用法 363
    16.2 聚合和索引 364
    16.2.1 countBy() 364
    16.2.2 groupBy() 365
    16.2.3 indexBy() 366
    16.3 选择 367
    16.3.1 从集合中选择数据 367
    16.3.2 从对象中选择数据 369
    16.4 链式调用 373
    16.5 函数计时 375
    16.5.1 defer() 375
    16.5.2 debounce() 377
    16.5.3 throttle() 378
    16.6 模板 380
    16.6.1 模板内的循环及其他
    JavaScript代码 381
    16.6.2 书写不加鳄鱼标记的代码 382
    16.6.3 从模板中获取数据对象 383
    16.6.4 默认模板数据 384
    16.7 小结 385
    16.8 相关资源 386
  • 内容简介:
    JavaScript是现代Web开发必不可少的编程语言,但JavaScript的生态系统包括库、框架以及工具都在快速地发展且日益庞大。程序员学习的需求和面临的挑战也相应地增加。
    JavaScript开发框架quanwei指南涵盖了在开发过程中常用的各种JavaScript工具,以帮助读者在大量流行的JavaScript工具中做选择。全书分为16章,从开发工具、模块加载器、客户端框架、服务端框架数据库交互、通信、管理控制流和其他有用框架等几个方面,涵盖了Bower、Grunt、Yeoman、PM2、RequireJS、Browserify、Knockout、AngularJS、Kraken、Mach、Mongoose、Knex、Bookshelf、Faye、Q、Async.js、Underscore和 Lodash等框架和库。全书涵盖了客户端和服务器端的开发,通过细致的讲解、详细的代码示例,阐明了这些工具的用法。
    JavaScript是现代Web开发必不可少的编程语言,但JavaScript的生态系统包括库、框架以及工具都在快速地发展且日益庞大。程序员学习的需求和面临的挑战也相应地增加。
  • 作者简介:
    Tim Ambler是来自美国田纳西州那什维尔的一名软件工程师。他对编程的热情来自于父亲。在他小的时候,他的父亲就向他介绍了Commodore 64电脑。Tim 是几个流行的开源项目的作者,其中whenLive已经被GitHub员工采用。作为会议演说家和多产的作家,Tim多次被在线出版物推荐,如JavaScript Weekly和Node Weekly。Tim目前与他的妻子和2只猫生活在南部。读者可以在Twitter上 @tkambler 关注他。

    Nicholas Cloud是一名软件工程师,居住在非常潮湿的城市圣路易斯。过去十几年里,他利用自己的技能成就一番成功事业。通过JavaScript、C+和PHP,他开发了大量适用于多终端的Web应用、Web服务、桌面应用。Nicholas是开源软件的有力支持者,致力于userland项目,并写了几个自己的开源库。在业余时间,他在不同的用户组发言、参加会议、写书、写技术文章、写博客。他的Twitter是@nicholascloud。
  • 目录:
    目 录





    第1章 Bower 1
    1.1 准备工作 1
    1.2 配置Bower 2
    1.3 清单文件(Manifest) 2
    创建新的清单文件 3
    1.4 查找、添加和删除Bower包 3
    1.4.1 查找包 3
    1.4.2 添加包 3
    1.4.3 删除包 5
    1.5 语义化版本控制 5
    1.6 维护依赖链 6
    1.7 创建Bower包 7
    1.7.1 选择有效的包名 7
    1.7.2 使用语义化版本(Semver)的
    Git标签 7
    1.7.3 将软件包发布到注册中心 7
    1.8 小结 8
    第2章 Grunt 9
    2.1 安装Grunt 10
    2.2 Grunt是如何工作的 10
    2.2.1 Gruntfile.js 10
    2.2.2 任务(Tasks) 11
    2.2.3 插件(Plugins) 11
    2.2.4 配置 12
    2.3 将Grunt添加到项目中 12
    保持合理的Grunt结构 12
    2.4 与任务共舞 14
    2.4.1 配置管理 14
    2.4.2 任务描述 15
    2.4.3 异步任务 15
    2.4.4 任务依赖 16
    2.4.5 多任务 16
    2.4.6 多任务中的Options 17
    2.7 模板配置 18
    2.4.8 命令行选项 19
    2.4.9 提供反馈 19
    2.4.10 错误处理 20
    2.5 操作文件系统 20
    2.5.1 源-目标映射 20
    2.5.2 监视文件变化 22
    2.6 创建Grunt插件 25
    2.6.1 开始 25
    2.6.2 创建任务 26
    2.6.3 将任务发布到npm 28
    2.7 总结 28
    2.8 相关资源 29
    第3章 Yeoman 30
    3.1 安装Yeoman 30
    3.2 创建第一个项目 30
    3.2.1 子命令 33
    3.3 创建你的第一个脚手架 34
    3.3.1 Yeoman脚手架是一个Node
    模块 34
    3.3.2 子脚手架 35
    3.3.3 定义二级命令 39
    3.3.4 可组合性 41
    3.4 小结 41
    3.5 相关资源 42
    第4章 PM2 43
    4.1 安装 43
    4.2 与进程一起工作 43
    4.2.1 从错误中恢复 46
    4.2.2 监控文件变化 47
    4.3 监控日志 48
    4.4 监控资源占用 49
    4.41 监控本地资源 49
    4.4.2 监控远程资源 49
    4.5 进程的高级管理 52
    4.5.1 通过JSON方式配置应用 52
    4.6 多核处理器的负载均衡 55
    4.6.1 0秒宕机的部署方式 57
    4.7 小结 59
    4.8 相关资源 59
    第5章 RequireJS 60
    5.1 运行示例 61
    5.2 使用RequireJS 61
    5.2.1 安装 62
    5.2.2 配置 62
    5.2.3 应用模块和依赖 64
    5.2.4 路径和别名 66
    5.2.5 Shims 69
    5.2.6 加载器插件 73
    5.2.7 缓存清除 78
    5.3 RequireJS优化 80
    5.3.1 配置 r.js 80
    5.3.2 运行r.js命令 81
    5.4 小结 82
    第6章 Browserify 84
    6.1 AMD API与CommonJS对比 84
    6.2 安装Browserify 85
    6.3 创建你的第一个Bundle 85
    6.4 可视化依赖树 87
    6.5 发生变化时重新打包文件 88
    6.5.1 通过Grunt监听文件变化 88
    6.5.2 通过Watchify监听文件
    变化 88
    6.6 使用多个打包文件 90
    6.7 Node方式 92
    6.7.1 模块解析方案和NODE_PATH
    环境变量 93
    6.7.2 依赖管理 95
    6.8 定义浏览器指定模块 96
    6.9 用Transforms扩展Browserify 97
    6.9.1 brfs 97
    6.9.2 folderify 98
    6.9.3 bulkify 98
    6.9.4 Browserify-Shim 99
    6.10 小结 100
    6.11 相关资源 100
    第7章 Knockout 101
    7.1 View、Model与View Model 102
    7.1.1 菜谱列表 103
    7.1.2 菜谱详情 106
    7.2 绑定视图模型到DOM 108
    7.3 视图模型与表单 109
    7.3.1 切换到“编辑”模式 109
    7.3.2 更改菜谱的标题 112
    7.3.3 更改菜谱的Serving与
    Cooking Time 112
    7.3.4 添加与删除食材 114
    7.3.5 操作步骤 118
    7.3.6 引文 119
    7.4 自定义组件 120
    7.4.1 input-list组件的视图模型 120
    7.4.2 input-list模板 121
    7.4.3 注册input-list组件 123
    7.5 Subscribable: 简单的消息传递 124
    7.6 小结 126
    7.7 相关资源 127
    第8章 AngularJS 128
    8.1 声明式Web编程 128
    8.1.1 命令式编程 128
    8.1.2 声明式编程 129
    8.2 Module:创建松散耦合程序的基石 130
    8.3 指令:DOM的抽象 132
    8.4 加入逻辑 134
    8.4.1 Scope与原型继承 134
    8.4.2 用Controller操作Scope 135
    8.5 通过Service与依赖注入(DI)
    实现松散耦合 138
    8.5.1 依赖注入 138
    8.5.2 简单的Controller与复杂的
    Service 139
    8.6 创建路由 142
    8.6.1 路由参数 143
    8.6.2 路由的Resolve 144
    8.7 创建复杂表单 145
    8.7.1 表单验证 146
    8.7.2 条件逻辑 150
    8.7.3 列表 151
    8.8 小结 153
    8.9 相关资源 154
    第9章 Kraken 155
    9.1 环境感知的配置 156
    9.2 注册基于配置的中间件 162
    9.3 结构化路由注册 165
    9.3.1 索引配置 165
    9.3.2 目录配置 166
    9.3.3 路由配置 167
    9.4 Dust模板 169
    9.4.1 上下文及引用 169
    9.4.2 片段 171
    9.4.3 迭代 172
    9.4.4 条件句 173
    9.4.5 局部模板 173
    9.4.6 块 174
    9.4.7 过滤器 175
    9.4.8 上下文辅助器 176
    9.4.9 Dust辅助器 182
    9.4.10 使用Kraken 186
    9.5 小结 200
    9.6 相关资源 200
    第10章 Mach 202
    10.1 章节例子 202
    10.2 安装 203
    10.3 Mach - Web服务 203
    10.3.1 HTTP路由 205
    10.3.2 建立连接 210
    10.3.3 公共的中间件 212
    10.3.4 路由重写 226
    10.3.5 主机映射 228
    10.3.6 自定义中间件 232
    10.4 Mach-HTTP客户端 234
    10.5 Mach - HTTP代理 236
    10.6 小结 239
    第11章 Mongoose> 240
    11.1 MongoDB的基本概念 240
    11.2 Mongoose的一个简单示例 243
    11.2.1 针对JSON数据创建一个
    Mongoose模式 243
    11.2.2 使用Mongoose导入数据 244
    11.2.3 通过Mongoose查询数据 247
    11.3 使用结构(Schemas) 248
    11.3.1 数据类型 248
    11.3.2 嵌套结构 250
    11.3.3 默认属性值 250
    11.3.4 必要属性 251
    11.3.5 辅助索引 251
    11.3.6 结构校验 252
    11.3.7 结构引用 255
    11.3.8 结构中间件 258
    11.4 使用模型和文档 259
    11.4.1 文档实例方法 262
    11.4.2 文档虚拟 263
    11.4.3 静态模型方法 265
    11.5 使用查询 266
    11.5.1 Model.find() 266
    11.5.2 使用查询运算符查找文档 272
    11.6 小结 278
    第12章 Knex和Bookshelf 279
    12.1 Knex 279
    12.1.1 安装命令行工具 280
    12.1.2 把Knex添加到你的项目 280
    12.1.3 配置Knex 280
    12.1.4 SQL查询构建器 281
    12.1.5 迁移脚本 287
    12.1.6 种子脚本 291
    12.2 Bookshelf 291
    12.2.1 什么是对象映射关系? 292
    12.2.2 创建Bookshelf模型 292
    12.2.3 关系 299
    12.3 小结 306
    12.4 相关资源 307
    第13章 Faye 308
    13.1 HTTP、Bayeux和WebSocket 308
    13.1.1 WebSocket 310
    13.1.2 Bayeux协议 310
    13.2 开始使用Faye 312
    13.3 发布/订阅消息系统 313
    13.4 小结 318
    13.5 相关资源 318
    第14章 Q 319
    14.1 时间就是一切 319
    14.2 Promise对比回调函数 322
    14.3 Q的Promise 324
    14.3.1 Deferreds 和 Promises 324
    14.3.2 值和错误 328
    14.3.3 报告进度 333
    14.3.4 终点 336
    14.4 控制流 338
    14.4.1 顺序流 338
    14.4.2 平行流 339
    14.4.3 管道流 341
    14.5 小结 342
    14.6 相关资源 343
    第15章 Async.js 344
    15.1 顺序流 345
    15.2 并行流 346
    15.3 管线流 348
    15.4 循环流 352
    15.4.1 为真则循环执行 352
    15.4.2 为假则循环执行 354
    15.4.3 循环重试 355
    15.4.4 无限循环 357
    15.5 批处理流 358
    15.5.1 异步队列 358
    15.5.2 异步负载 359
    15.6 小结 361
    第16章 Underscore和Lodash 362
    16.1 安装及用法 363
    16.2 聚合和索引 364
    16.2.1 countBy() 364
    16.2.2 groupBy() 365
    16.2.3 indexBy() 366
    16.3 选择 367
    16.3.1 从集合中选择数据 367
    16.3.2 从对象中选择数据 369
    16.4 链式调用 373
    16.5 函数计时 375
    16.5.1 defer() 375
    16.5.2 debounce() 377
    16.5.3 throttle() 378
    16.6 模板 380
    16.6.1 模板内的循环及其他
    JavaScript代码 381
    16.6.2 书写不加鳄鱼标记的代码 382
    16.6.3 从模板中获取数据对象 383
    16.6.4 默认模板数据 384
    16.7 小结 385
    16.8 相关资源 386
查看详情
相关图书 / 更多
JavaScript开发框架权威指南
Java程序设计任务驱动教程
黑马程序员
JavaScript开发框架权威指南
Java研发自测入门与进阶
林宁、魏兆玉
JavaScript开发框架权威指南
Java语言程序设计(2023年版)全国高等教育自学考试指导委员会
全国高等教育自学考试指导委员会
JavaScript开发框架权威指南
Java+OpenCV案例佳作选
姚利民
JavaScript开发框架权威指南
Java核心编程技术(第4版微课版新世纪应用型高等教育软件专业系列规划教材)
张屹、蔡木生 编
JavaScript开发框架权威指南
Java程序设计及实践应用研究
张萌,梁正,李真
JavaScript开发框架权威指南
Java Web及其框架技术
陈振兴
JavaScript开发框架权威指南
JavaScript多线程编程实践
(美)托马斯 亨特二世(Thomas Hunter II),(加拿大)布莱恩 英格利什(Bryan English)
JavaScript开发框架权威指南
Java开发坑点解析:从根因分析到最佳实践
朱晔
JavaScript开发框架权威指南
Java面向对象程序设计(题库·微课视频版)
梁胜彬 主编 渠慎明 白晨希 马华蔚 甘志华 程素营 副主编
JavaScript开发框架权威指南
Java程序设计(微课版新世纪应用型高等教育计算机类课程规划教材)
李月辉、李慧 编
JavaScript开发框架权威指南
Java到Kotlin:代码重构指南
(英)邓肯·麦格雷戈(Duncan McGregor)
您可能感兴趣 / 更多