基于MVC的JavaScript Web富应用开发
查字典图书网
当前位置: 查字典 > 图书网 > 互联网> 基于MVC的JavaScript Web富应用开发

基于MVC的JavaScript Web富应用开发

基于MVC的JavaScript Web富应用开发

8.3

作者: 麦卡劳
出版社: 电子工业出版社
原作名: JavaScript Web Applications
译者: 张散集  |  李晶
出版年: 2012-5
页数: 282
定价: 59.00元
装帧: 平装
丛书: 博文视点O'reilly系列
ISBN: 9787121109560

我要收藏

内容简介:

《JavaScript Web 富应用开发》Developing JavaScript Web Applications是 Alex MacCaw 的新作(由O'Reilly出版发行),本书系统而深入的讲解了如何使用最前沿的Web技术构建下一代互联网富应用程序。作者 Alex MacCaw 是一名Ruby/JavaScript 程序员,在开源社区中很有名望,是Spine框架的作者,同时活跃在纽约、旧金山和柏林的各大 Ruby/Rails 论坛。除了作为一名工程师,他还喜欢带着他的尼康D90和冲浪板环游世界。

有赖于强大的JavaScript引擎以及CSS3和HTML5新技术,如今的JavaScript Web 富应用的用户体验已经可以和桌面系统相媲美。关键是如何平滑的将服务器端的复杂度移植到客户端,这并不容易做到。这本书将专注于讲述如何构建“优雅又不失高水准”(state of the art)的JavaScript应用,包括软件架构、模板引擎、框架和库、同服务器的消息通信等内容。

通过由浅入深的讲解,你将学会如何构建具有丰富交互以及优雅体验的JavaScript应用,书中同样提供了大量的示例代码,可以帮助你更深入的理解很多重要的概念。

揭开MVC的神秘面纱,教你如何设计合理的架构以及处理应用内部模块之间的依赖

介绍模板引擎和数据绑定

讲解远程数据加载、第二代Ajax以及跨域请求

利用WebSockets和Node构建实时应用

拖拽上传文件以及上传进度提示

讲解主流的库和框架,包括jQuery、JavaScriptMVC以及Backbone

编写测试用例,并使用控制台工具来调试你的应用

部署应用的最佳实践,比如缓存机制和代码压缩等

作者简介:

作者简介

Alex MacCaw是一名Ruby/JavaScript程序员,在开源社区中很有名望,是Spine框架的作者,开发过Taskforce,Socialmod等大型开源项目,同时活跃在纽约、旧金山和柏林的各大Ruby/Rails会议。

目录:

目 录

第1章 MVC和类 ............................................................1

最初 .........................................................................................................................1

增加结构 ..................................................................................................................2

什么是MVC ............................................................................................................2

模型 ..................................................................................................................3

视图 ..................................................................................................................4

控制器 ..............................................................................................................5

向模块化进军,创建类 ............................................................................................6

给类添加函数...........................................................................................................7

给“类”库添加方法 ...............................................................................................8

基于原型的类继承 .................................................................................................10

给“类”库添加继承 ............................................................................................. 11

函数调用 ................................................................................................................12

控制“类”库的作用域 ..........................................................................................15

添加私有函数.........................................................................................................17

“类”库 ..................................................................................................................18

第2章 事件和监听 ........................................................21

监听事件 ................................................................................................................21

事件顺序 ................................................................................................................22

取消事件 ................................................................................................................23

事件对象 ................................................................................................................23

事件库 ....................................................................................................................25

切换上下文 ............................................................................................................26

委托事件 ................................................................................................................26

自定义事件 ............................................................................................................27

自定义事件和jQuery 插件 .....................................................................................28

DOM 无关事件 ......................................................................................................30

第3章 模型和数据 ........................................................33

MVC 和命名空间 ...................................................................................................33

构建对象关系映射(ORM) ...................................................................................34

原型继承 ........................................................................................................35

添加ORM 属性 ..............................................................................................36

持久化记录.....................................................................................................37

增加ID 支持 ..........................................................................................................39

寻址引用 ................................................................................................................40

装载数据 ................................................................................................................41

直接嵌套数据 .................................................................................................42

通过Ajax 载入数据 ........................................................................................42

JSONP ............................................................................................................46

跨域请求的安全性 .........................................................................................46

向ORM 中添加记录 ..............................................................................................47

本地存储数据.........................................................................................................47

给ORM 添加本地存储 ..........................................................................................49

将新记录提交给服务器 ..........................................................................................51

第4章 控制器和状态 .....................................................53

模块模式 ................................................................................................................54

全局导入 ........................................................................................................54

全局导出 ........................................................................................................54

添加少量上下文 .....................................................................................................55

抽象出库 ........................................................................................................56

文档加载完成后载入控制器 ..........................................................................58

访问视图 ........................................................................................................59

委托事件 ........................................................................................................61

状态机 ....................................................................................................................63

路由选择 ................................................................................................................65

使用URL 中的hash .......................................................................................65

检测hash 的变化 ............................................................................................66

抓取Ajax .......................................................................................................67

使用HTML5 History API ...............................................................................68

第5章 视图和模板 ........................................................71

动态渲染视图.........................................................................................................71

模板 .......................................................................................................................73

模板Helpers ...................................................................................................75

模板存储 ........................................................................................................75

绑定 .......................................................................................................................77

模型中的事件绑定 .........................................................................................78

第6章 依赖管理 ...........................................................81

CommonJS .............................................................................................................82

模块的声明.....................................................................................................83

模块和浏览器 .................................................................................................83

模块加载器 ............................................................................................................84

Yabble ............................................................................................................84

RequireJS .......................................................................................................85

包装模块 ................................................................................................................87

模块的按需加载 .....................................................................................................88

LABjs .............................................................................................................89

无交互行为内容的闪烁(FUBC) ..........................................................................89

第7章 使用文件 ...........................................................91

浏览器支持 ............................................................................................................91

获取文件信息.........................................................................................................92

文件输入 ................................................................................................................92

拖曳 .......................................................................................................................93

拖曳 ................................................................................................................94

释放拖曳 ........................................................................................................96

撤销默认的Drag/Drop ...................................................................................97

复制和粘贴 ............................................................................................................97

复制 ................................................................................................................98

粘贴 ................................................................................................................99

读文件 .................................................................................................................. 100

二进制大文件和文件切割 ............................................................................ 101

自定义浏览器按钮 ............................................................................................... 102

上传文件 .............................................................................................................. 102

Ajax 进度条 .................................................................................................. 104

jQuery 拖曳上传 .................................................................................................. 106

创建拖曳目标区域 ....................................................................................... 106

上传文件 ...................................................................................................... 107

第8章 实时Web .........................................................109

实时Web 的发展历史 .......................................................................................... 109

WebSocket ............................................................................................................ 110

Node.js 和Socket.IO .................................................................................... 114

实时架构 .............................................................................................................. 116

感知速度 .............................................................................................................. 117

第9章 测试和调试 ......................................................119

单元测试 .............................................................................................................. 121

断言 .............................................................................................................. 121

QUnit ............................................................................................................ 122

Jasmine ......................................................................................................... 126

驱动 ..................................................................................................................... 128

无界面的测试....................................................................................................... 131

Zombie ......................................................................................................... 132

Ichabod ......................................................................................................... 134

分布式测试 .......................................................................................................... 135

提供支持 .............................................................................................................. 136

调试工具 .............................................................................................................. 136

Web Inspector ............................................................................................... 136

Firebug ......................................................................................................... 138

控制台 .................................................................................................................. 139

控制台函数................................................................................................... 140

使用JavaScript 调试器 ........................................................................................ 141

分析网络请求....................................................................................................... 143

Profile 和函数运行时间 ....................................................................................... 144

第10章 部署 ..............................................................147

性能 ..................................................................................................................... 147

缓存 ..................................................................................................................... 148

源码压缩(Minification) ..................................................................................... 150

Gzip 压缩 ............................................................................................................. 151

使用CDN ............................................................................................................. 152

审查工具 .............................................................................................................. 153

外部资源 .............................................................................................................. 154

第11章 Spine类库 .....................................................155

设置 ..................................................................................................................... 156

类 ......................................................................................................................... 156

实例化 .......................................................................................................... 156

类扩展 .......................................................................................................... 157

上下文 .......................................................................................................... 158

事件 ..................................................................................................................... 159

模型 ..................................................................................................................... 160

获取记录 ...................................................................................................... 161

模型事件 ...................................................................................................... 162

校验 .............................................................................................................. 163

持久化 .......................................................................................................... 163

控制器 .................................................................................................................. 165

代理 .............................................................................................................. 166

元素 .............................................................................................................. 167

委托事件 ...................................................................................................... 167

控制器事件................................................................................................... 168

全局事件 ...................................................................................................... 168

渲染模式 ...................................................................................................... 169

元素模式 ...................................................................................................... 169

构建联系人管理应用 ........................................................................................... 171

联系人模型................................................................................................... 172

侧边栏控制器 ............................................................................................... 173

联系人控制器 ............................................................................................... 175

应用程序控制器 ........................................................................................... 178

第12章 Backbone类库 ...............................................181

模型 ..................................................................................................................... 182

模型和属性................................................................................................... 182

集合 ..................................................................................................................... 184

控制集合的内部顺序 .................................................................................... 185

视图 ..................................................................................................................... 185

渲染视图 ...................................................................................................... 186

委托事件 ...................................................................................................... 187

绑定和上下文 ............................................................................................... 187

控制器 .................................................................................................................. 188

与服务器的同步 ................................................................................................... 190

填充集合 ...................................................................................................... 192

服务器端 ...................................................................................................... 192

自定义行为................................................................................................... 193

构建To-Do 列表应用 ........................................................................................... 195

第13章 JavaScriptMVC类库 ......................................203

设置 ..................................................................................................................... 204

Class ..................................................................................................................... 204

实例化 .......................................................................................................... 205

调用基类的方法 ........................................................................................... 205

代理 .............................................................................................................. 205

静态继承 ...................................................................................................... 206

自省 .............................................................................................................. 206

一个模型的例子 ........................................................................................... 207

模型 ..................................................................................................................... 207

属性和可观察 ............................................................................................... 208

扩展模型 ...................................................................................................... 210

Setter ............................................................................................................ 210

Defaults ........................................................................................................ 211

辅助方法 ...................................................................................................... 211

服务封装 ...................................................................................................... 212

类型转换 ...................................................................................................... 215

CRUD 事件 .................................................................................................. 216

在视图中使用客户端模板 .................................................................................... 216

基本用法 ...................................................................................................... 217

jQuery 修改器 .............................................................................................. 217

用Script 标签加载 ....................................................................................... 217

$.View 和子模板 .......................................................................................... 218

延时对象 ...................................................................................................... 218

打包、预加载和性能 .................................................................................... 219

$.Controller :jQuery 插件工厂 ............................................................................ 220

概览 .............................................................................................................. 222

控制器实例化 ............................................................................................... 222

事件绑定 ...................................................................................................... 223

模板动作 ...................................................................................................... 224

大综合:一个抽象的CRUD 列表 ........................................................................ 225

附录A jQuery基础 .....................................................227

附录B CSS扩展 .........................................................239

附录C CSS3参考 .......................................................245

索引 ...........................................................................267

展开全文
随机来一本书

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

热门标签:
我想说两句
我要写长评
 想读     在读     读过   
评价:
标签(多个标签以“,”分开):