具体描述
移动互联网不可阻挡地进入了我们的生活。作者将自己在百度和天猫期间的跨终端Web的开发实践转化为书中的技术方案和实现,呈现给各位读者。第1章提出了跨终端Web的概念以及实现跨终端Web的多重途径,第2章主要介绍Mobile Web的技术基础,第3~7章是全书的核心,按照开发流程组织逐步讲解了实现跨终端Web所需要的各类技术基础设施,第8章主要介绍了Hybrid App的发展历程、实现细节以及成熟的框架,第9章介绍的跨终端存储方案(Storage)是作者曾经的冠军作品,第10章完整介绍了如何通过脚本录制和回放来实现跨终端动作同步。
作者简介
鬼道(原名徐凯),2011年毕业于同济大学计算机科学与技术系,模式识别方向硕士研究生。现就职于天猫,先后负责天猫跨终端Web的业务推进和技术基础设施建设、天猫前端会员营销组。目前关注的领域是Mobile Web、PC Web和Native App的融合。
目录信息
1.1 终端VS.设备 1
1.2 一个贯穿全书的例子 2
1.3 后续章节 3
1.4 移动优先 4
1.4.1 移动流量暴增 4
1.4.2 聚焦业务本质 5
1.4.3 人机交互扩展 7
1.4.4 再说书名 8
1.5 不只是响应式 8
1.5.1 响应式 8
1.5.2 多站点 13
1.5.3 多模板 13
1.5.4 多平台 15
1.6 解决方案 16
2 Mobile Web 17
2.1 HTML5 18
2.2 HTML 19
2.2.1 移动页面模板 19
2.2.2 Viewport 21
2.2.3 touch-icon 26
2.2.4 其他 27
2.3 触屏事件 27
2.3.1 触屏事件一览 27
2.3.2 通用触屏事件 28
2.4 调试 31
2.4.1 远程调试 31
2.4.2 设备调试 43
2.5 兼容性 44
2.5.1 OS版本碎片化 44
2.5.2 国内的特殊情况 46
2.5.3 WebView 46
2.5.4 更多工具 46
2.6 文档 48
3 基准 51
3.1 GBS 51
3.2 MGBS 53
3.2.1 准备 53
3.2.2 操作系统分级 54
3.2.3 屏幕分辨率分级 65
3.2.4 浏览器分级 71
3.2.5 MGBS 73
3.3 GTE 75
3.3.1 分层设计 76
3.3.2 核心层 76
3.3.3 数据层 78
4 检测 81
4.1 终端 81
4.1.1 什么是终端 81
4.1.2 分类 82
4.2 终端检测 82
4.2.1 场景 82
4.2.2 原理 83
4.2.3 实现 85
4.3 遗留问题 86
4.3.1 硬件信息 86
4.3.2 更精准的终端检测 86
5 接口 87
5.1 跨终端流程复用 87
5.1.1 示例1 87
5.1.2 示例2 88
5.2 IF 89
5.2.1 始于一次重构 90
5.2.2 新的环境 95
5.2.3 模型 95
5.2.4 解决方案 96
5.2.5 架构 96
5.2.6 路线图 99
5.3 if-spec 2.0 102
5.3.1 JSON Schema 102
5.3.2 Demo 109
5.3.3 meta 113
5.3.4 if-spec 1.0 114
5.4 if-mock 2.0 116
5.5 if-guide 2.0 118
5.6 总结 122
6 定位 125
6.1 定位 126
6.1.1 Hash 126
6.1.2 History API 127
6.1.3 视图定位 129
6.2 数据 129
7 预览 131
7.1 客户端 132
7.2 服务端 133
7.3 示例 136
8 Hybrid App 139
8.1 Hybrid简史 139
8.1.1 背景 139
8.1.2 简史 140
8.1.3 现状 142
8.2 Hybrid技术 144
8.2.1 Native调用Web 144
8.2.2 Web调用Native 144
8.2.3 Bridge 146
8.3 Hybrid框架 150
8.3.1 PhoneGap 151
8.3.2 Titanium 152
8.4 Device API 153
8.4.1 动作传感器 156
8.4.2 环境传感器 158
8.4.3 音频 159
8.4.4 视频 160
8.5 小结 160
9 存储 161
9.1 状态持久化 162
9.2 技术方案 163
9.2.1 整体方案 163
9.2.2 跨终端存储方案 164
9.2.3 跨域通信方案 166
9.2.4 安全性 168
9.2.5 遗留问题 168
9.3 使用 168
9.3.1 实例化 169
9.3.2 set/get 169
9.3.3 remove/clear 170
9.3.4 推荐命名 170
10 动作同步 171
10.1 原理 171
10.1.1 案例 171
10.1.2 动作同步 172
10.2 实现 173
10.2.1 Selenium 173
10.2.2 脚本录制和回放 174
附录A GBS 183
附录B JSON Schema Core 189
附录C JSON Schema Validation 201
附录D if-spec 2.0 221
作者简介 225
· · · · · · (收起)
读后感
很棒的一本引路书,对于那些处于瓶颈期的前端童鞋很有帮助。书的内容是作者近段时间的实战总结和积累,相当干货。重点不是告诉你多少花哨技巧,而是引导你如何从整体考虑解决实际问题,抽象的、系统的、机动性高的解决方案才是最终目标。个人感觉能做大事的人必定能做小事,一...
随着移动互联网爆发式的发展,以后绝大多数人使用PC会越来越少,除手机、平板之外,也将一定会出现很多新型终端设备.Web是互联网信息传递的基石,跨终端的Web开发绝对是新一代前端2.0工程师必备技能。 这本书,值得每一位从事前端开发的工程师品读学习。
很棒的一本引路书,对于那些处于瓶颈期的前端童鞋很有帮助。书的内容是作者近段时间的实战总结和积累,相当干货。重点不是告诉你多少花哨技巧,而是引导你如何从整体考虑解决实际问题,抽象的、系统的、机动性高的解决方案才是最终目标。个人感觉能做大事的人必定能做小事,一...
作为一个前端工程师写的书,这本书的用户体验很不好,很多插图也许放在ppt或网页里看起来也许不错,然而打印出来既没有颜色,也没有通过其他方法标示,很难看清每条线代表什么,而且还不提供结论。另外一点书中提到的很多参考文献不错,但是都是那么长的URL,你想去阅读URL对应...
用户评价
这本书最成功的地方在于,它成功地搭建了一座连接“概念”与“落地”之间的桥梁。市面上很多书籍要么过于概念化,读完后不知如何下手;要么过于偏重某一个框架或工具的API介绍,缺乏全局观。但这部作品却恰到好处地平衡了两者。我尤其欣赏它在描述某一技术选型时,会同时列举出至少三种不同技术路线的优缺点和适用场景,而不是强行推销某一种“最佳实践”。这使得读者在面临实际工程问题时,能够基于充分的信息进行独立、理性的判断,而不是盲目跟风。读完后,我感觉自己对如何构建一个面向未来的、可扩展的复杂系统,有了一种全新的、更加自信的认知框架。
我花了整整一个周末才啃完这本大部头,说实话,这本书的深度远超乎我的想象。它不是那种浮于表面的技术速查手册,而更像是一份详尽的工程实践指南。让我印象最深的是其中关于“性能瓶颈的排查与优化”那一章,作者简直是把调试工具的各种黑魔法都展示出来了,从浏览器渲染机制的底层原理,到服务器端的异步处理策略,条分缕析,逻辑清晰。我尝试按照书中的步骤去优化我们项目中的一个老旧模块,效果立竿见影,响应时间减少了近40%。这种直接能看到产出和回报的阅读体验,是很多技术书籍难以提供的。它要求读者有一定的基础,但回报绝对是巨大的,感觉像是给自己的技术栈打了一针强心剂,视野瞬间开阔了很多。
坦白说,这本书的阅读体验非常“硬核”,对读者的耐心和专注力是极大的考验。它没有刻意去迎合初学者,很多篇幅都在探讨极端情况下的鲁棒性设计。例如,书中花了大量篇幅讨论了网络分区容错(P-A-C 理论的实践应用),以及在各种高并发场景下如何设计幂等操作,这些内容对于我这种已经工作了几年、开始负责核心系统的人来说,简直是雪中送炭。作者的行文风格带着一种严谨的学者气质,每一个技术名词的引用都附带着详尽的出处或定义,让人不得不佩服其学术上的严谨态度。虽然偶尔会觉得枯燥,但一旦遇到实际问题翻开它,总能找到最可靠的“定海神针”。
这本书的结构编排非常新颖,它没有采用传统的“基础知识先行”的模式,而是从一个宏大的愿景入手,逐步拆解实现路径。我特别喜欢它在探讨“未来趋势”时的那种前瞻性,虽然有些论断可能现在看来还略显超前,但无疑为我们指明了未来的技术演进方向。书中对于“数据一致性”在分布式环境下的处理,提供了好几个创新性的解决方案,这些方案并非仅仅是理论推导,而是基于实际生产环境的复杂性所打磨出来的“艺术品”。每一次阅读,我都能发现一些新的闪光点,可能是某个注释里隐藏的工程智慧,也可能是一个未被广泛宣传的优秀设计模式。它更像是一本与行业顶尖思考者进行的深度对话记录。
这部书的文笔实在是太吸引人了,作者对于技术细节的把握精准到位,但又不失生动的叙述方式。我尤其欣赏书中对“用户体验”这个核心理念的深入探讨,它不仅仅是停留在表面的界面设计,而是贯穿了整个开发流程,从前端到后端的每一个环节都在强调如何为用户创造无缝的连接感。书中列举的那些经典案例,比如某个大型电商平台的“猜你喜欢”功能的演进过程,简直就是教科书级别的剖析,让我对如何构建一个真正以用户为中心的系统有了全新的认识。作者很巧妙地将复杂的架构设计,用非常形象的比喻进行了解释,即便是初次接触这些概念的读者,也能迅速抓住重点。读完之后,我感觉自己对于如何设计和实现一个“有温度”的软件产品,有了一种更为成熟和全面的理解,远超出了我原先对技术书籍的期待。
我感觉更多描述一个问题的存在,解决问题的具体环节和细节涉及得少了一些。
内容就是「跨终端技术概览」好嘛,为啥我看之前没仔细看这本书的受众啊.....上面说到的我都了解,并且大部分都在开发 Tower 时用过....... 两星是给的 Hybrid 章节介绍了下 Bridge。
ppt。这钱花得不太值。书中内容 = 网上可以搜索到的资料 + 作者工作经验总结(纯记录,难借鉴) + 作者写的组件的演变过程和使用文档。(其中一星给作者在繁忙工作中还能总结自己项目经验成为有条理的文档所作出的努力,一星给作者把这么多资料汇编成「书」)
2016.06很薄的一本书,像一个工具书,移动时代的页面基础配置,如何调试,对接口的思考让我收获很大,以前没有考虑过,但是感觉更像一大本ppt,很多教程揉在一起,想搞移动开发还是值得一看的
移动web的确发展迅速,书里的很多数据、图表已经过时。这本书差强人意。