跨终端 Web

跨终端 Web移动优先|响应式|HTML5|Hybrid|桌面+移动应用|一线前端负责人联袂推荐

徐凯  著  

ISBN 978-7-121-23345-6

2014年6月出版

定价:55.00元

240

16

编辑推荐

√聚焦开创性话题,完整呈现与详尽剖析这一突破终端碎片化难局的解决方案

√鬼道及团队倾力打造,三大电商前端技术掌门及一线互联网高工赞誉力推

√跨越手机、平板、桌面和电视等不同终端在呈现本质与商业模式上的差异,强调业务本质和核心人机交互流程

√面向未来人机交互,学会如何选择响应式Web、服务端响应式Web、多个URL Web,Hybrid或Native应用

√融合Web页面和客户端应用,用一套数据多个高品质低成本呈现的移动优先思想来变革前端开发方式、架构和发布机制

√从天猫实际业务场景出发,覆盖大量已经一线实践检验的技术、思路、方法、流程和先进经验

内容提要

移动互联网不可阻挡地进入了我们的生活。作者将自己在百度和天猫期间的跨终端Web的开发实践转化为书中的技术方案和实现,呈现给各位读者。第1章提出了跨终端Web的概念以及实现跨终端Web的多重途径,第2章主要介绍Mobile Web的技术基础,第3~7章是全书的核心,按照开发流程组织逐步讲解了实现跨终端Web所需要的各类技术基础设施,第8章主要介绍了Hybrid App的发展历程、实现细节以及成熟的框架,第9章介绍的跨终端存储方案(Storage)是作者曾经的冠军作品,第10章完整介绍了如何通过脚本录制和回放来实现跨终端动作同步。

《跨终端 Web》讲解深入浅出,通畅易懂,适合有一定PC Web基础,希望迅速了解Mobile Web,致力于PC和Mobile Web技术融合的读者。

目录

1  跨终端Web       1

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

作者简介

鬼道(原名徐凯),2011年毕业于同济大学计算机系,模式识别方向硕士研究生。曾就职百度,现为天猫前端通用组技术Leader。曾获得2011年百度最佳新人、2013年天猫技术部最佳新人、2013年天猫最佳小二(成长)。

2013年10月,凭借跨终端跨域存储组件Storage获得阿里“2013 Kissy Gallery组件大赛”冠军。

本书源于2013年7月在D2上的主题分享“移动优先的跨终端Web”,2013年11月在W3CTECH 2013做了第二次分享。

就职天猫期间(2013年至今)带领团队完成了天猫工具栏项目并在2013年“双十一”取得4倍于目标的成绩,工具栏也成为电商站点模仿的热点。

就职百度期间(2011年至2013年)带领前端团队先后完成了全平台(Web/Android/iOS)移动广告SDK及其业务站点、移动富媒体广告SDK、移动统计SDK及业务站点、移动云测试中心(Alpha 版本)等工作。

新浪微博: @鬼道-徐凯

媒体评论

支付宝前端负责人玉伯(王保平)

这是一本从天猫的实际业务场景出发,经过点滴积累、持久坚持而写就的书。书中的内容有可能很快会过时,但作者面对问题时的思考方式、解决问题后的总结习惯永不过时。书中的思考,值得每一位程序员学习并实践。

----------------------------------------------

天猫前端负责人三七(鄢学鲲)

现在人和人最大的共同点也许就是都拥有一部智能移动终端,浏览器的大量使用催生了前端工程师职业的出现,智能移动终端的爆炸式普及会推动前端工程师规模的超几何级增长和综合技能的革命性升级。前端工程师要从“兼容多浏览器 + ajax”走入到“跨终端 + 前后端分离”时代,这本书就是开始。

----------------------------------------------

淘宝前端负责人小马(赵泽欣)

这两年我的工作重心全都放在跨终端领域。我坚定的认为:在跨终端时代,无论是产品设计与运营,还是技术架构和开发模式,都将发生重大的变革。所有Web开发人员即将面临(或者说已然面临)新的挑战。尤其对前端工程师而言,会是一次升级的良机。我建议所有的前端工程师马上开始关注这个领域。

----------------------------------------------

百度前端高工李玉北

鬼道同学从自身的项目经历出发,总结了跨终端Web开发中遇到的问题,并给出对应的最佳实践的解决方案,值得从事相关工作的同学去参考和借鉴。

前言

移动互联网不可阻挡地进入了我们的生活。笔者将自己在百度和天猫期间的跨终端Web的开发实践转化为书中的技术方案和实现,呈现给各位读者。

本书大纲来自于笔者2013年7月在D2上的主题分享“移动优先的跨终端Web”,2013年11月W3CTECH 2013上做了第二次分享。

面向对象

本书适合有一定PC Web基础,希望迅速了解Mobile Web,致力于PC和Mobile Web技术融合的读者。

本书的第1章、第3章、第5章面向所有的读者,即使您对Web技术毫无了解,仍可以顺利阅读下来。本书其他章节假定您对PC Web前端技术已经有所了解,知道HTML、CSS、JavaScript这些名词的含义,并且动手写过一个页面。

章节简介

第1章阐述了移动互联网的现状和遇到的问题,提出了跨终端Web的概念以及实现跨终端Web的多重途径,破除了“唯Media Query论”,并引入移动移先的概念,丰富跨终端Web的内核。

第2章从对比PC Web的角度介绍了Mobile Web的技术基础,并对远程调试、兼容性等开发问题做了详尽的阐述。

第3~7章是全书的核心,按照开发流程组织,逐步讲解了实现跨终端Web所需要的各类技术基础设施,包括:

?     基准,给出了调试和测试过程中的基准,确定调试和测试的范围。

?     检测,探讨如何构造一个为全站服务的终端属性检测工具。

?     接口,探索实现流程复用的途径及端到端的接口规范(IF)。

?     定位,分别介绍了基于Hash和基于History API的跨终端定位方案。

?     预览,介绍了实现跨终端预览的方案,并给出一个简化的实现。

第8章介绍了Hybrid App的发展历程、实现细节以及成熟的框架,并详细分析了以传感器为核心的Device API。

第9章的跨终端存储方案(Storage)是笔者参加“2013 Kissy Gallery组件大赛”时的冠军作品。

第10章完整介绍了如何通过脚本录制和回放来实现跨终端动作同步。

跨终端 Web

时间: 2024-11-06 17:04:25

跨终端 Web的相关文章

转: 跨终端Web之Hybrid App

转:  http://www.infoq.com/cn/articles/hybrid-app 编者按:InfoQ开设新栏目“品味书香”,精选技术书籍的精彩章节,以及分享看完书留下的思考和收获,欢迎大家关注.本文节选自徐凯著<跨终端Web>第八章“Hybrid App”,主要讲述Hybrid App的发展现状以及技术实现,最后还介绍了两种主流Hybrid开发框架PhoneGap/Cordova和Titanium. Native App(以下简称Native)和Mobile Web(以下简称We

单纯觉得是篇好文——跨终端Web之Hybrid App

[reference]http://www.infoq.com/cn/articles/hybrid-app#theCommentsSection 编者按:InfoQ开设新栏目“品味书香”,精选技术书籍的精彩章节,以及分享看完书留下的思考和收获,欢迎大家关注.本文节选自徐凯著<跨终端Web>第八章“Hybrid App”,主要讲述Hybrid App的发展现状以及技术实现,最后还介绍了两种主流Hybrid开发框架PhoneGap/Cordova和Titanium. Native App(以下简

初识跨终端Web

近期试读了<跨终端Web>这本书的部分章节,既为了拿到书,也为了记录下读后的收获的东西,这会是个非常好的习惯吧. 标题为"初识跨终端Web".对我来说最贴切了,在此之前,我所做的网页开发都是基于PC网页的,希望可以有个好的开头,好好深入. 在这本书的开头,作者就点到,他接下来要说的是"跨终端"而非"跨设备",我们经常听到"跨设备"(或者说"跨平台"),这个字眼给我们的第一印象是这个页面既能够在P

跨终端Web之Hybrid App开发对比

Native App(以下简称Native)和Mobile Web(以下简称Web)二者混合开发的产物被称为Hybrid App(以下简称Hybrid).Hybrid并不是什么新概念,最早可以追溯到Symbian时代,直到iOS和Android出现之后才充分展现出价值. 一.Hybrid简史 Hybrid既利用了Native App丰富的设备API(Device API),又能拥有Mobile Web的跨平台.高效开发.快速发布的能力,对于相当庞大的应用场景而言都是适用的. Hybrid优势在于

跨终端Web之Hybrid App

Native App(以下简称Native)和Mobile Web(以下简称Web)二者混合开发的产物被称为Hybrid App(以下简称Hybrid).Hybrid并不是什么新概念,最早可以追溯到Symbian时代,直到iOS和Android出现之后才充分展现出价值. Hybrid简史 1. 背景 Hybrid既利用了Native App丰富的设备API(Device API),又能拥有Mobile Web的跨平台.高效开发.快速发布的能力,对于相当庞大的应用场景而言都是适用的. Hybrid

《跨终端Web》读书笔记

跨终端的Web成为了趋势,而这本书就是讲了在这种趋势下进行开发的常见问题及其解决方案,可能是限于篇幅,每个方面都没有展开细说,但这是这样让本书干货满满,几乎没有一句废话. 下面是一些笔记. Web的本质特性是低成本跨平台但是对设备先进特性支持性不够. Web和客户端应用的融合已经成为必然!前端工程师的基本功也包括了客户端和服务器端环境的知识. 移动优先. 跨终端除了响应式,也包括多站点,多模板,多平台.需要综合考虑需求和复杂度等很多因素,使用合适的方式. 响应式的瓶颈:响应式不能解决移动端DOM

跨终端Web

1.终端vs设备 H5页面运行在同一设备的不同终端下. (1)Web浏览器. (2)微信.QQ浏览器. (3)移动App的Webview. (4)TV机顶盒. 2.跨终端的实现方式 (1)响应式 存在内在的高耦合性,频繁更新维护成本高 (2)多站点 m.example.com.hd.example.com. wap.example.com. iphone.example.com. ipad.example.com (3)多模板 一个页面只有一个URL,无须服务器端繁杂的URL映射和终端检测等手段

[已读]跨终端web

13年去听阿里技术嘉年华,鬼道分享了<移动优先前端产品的探索>.今年我买这本书,事实上是被高大上的目录吸引→ → 买来后发现,嘿,似曾相识啊,但还是老老实实得花一下午把书翻了一遍.翻完之后觉得,1.书略贵 2.既然内容与视频差不多,看视频就好了 3.图表数据占空间,其实可以放网上的(额,好吧,书本身已经很薄) 4.目前能力不够无法领悟它的亮点

跨终端响应式页面设计入门

跨终端/响应式页面不外乎是让各种分辨率的屏幕都能顺利阅读你的页面,常规来讲一个跨终端页面,在宽屏的电脑上看和在小屏幕手机上看的布局是不同的,布局不同的原因是为了让读者更好地阅读你的页面,见下图: 这里有点要提到的是,我们常规会将PC版的页面和移动端设备的页面独立开来设计,这样会让PC端的页面布局更灵活和好维护.如果你希望你的页面能适配包括PC端在内的任何设备,那么下面几个小工具可以方便你顾及旧版本IE所存在的困扰: ⑴ IE8-不能识别HTML5的<hearder>.<article&g