跨终端 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的更多相关文章

  1. 转: 跨终端Web之Hybrid App

    转:  http://www.infoq.com/cn/articles/hybrid-app 编者按:InfoQ开设新栏目“品味书香”,精选技术书籍的精彩章节,以及分享看完书留下的思考和收获,欢迎大 ...

  2. 跨终端Web之Hybrid App

    Native App(以下简称Native)和Mobile Web(以下简称Web)二者混合开发的产物被称为Hybrid App(以下简称Hybrid).Hybrid并不是什么新概念,最早可以追溯到S ...

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

    [reference]http://www.infoq.com/cn/articles/hybrid-app#theCommentsSection 编者按:InfoQ开设新栏目“品味书香”,精选技术书 ...

  4. 初识跨终端Web

    近期试读了<跨终端Web>这本书的部分章节,既为了拿到书,也为了记录下读后的收获的东西,这会是个非常好的习惯吧. 标题为"初识跨终端Web".对我来说最贴切了,在此之前 ...

  5. 《跨终端Web》读书笔记

    跨终端的Web成为了趋势,而这本书就是讲了在这种趋势下进行开发的常见问题及其解决方案,可能是限于篇幅,每个方面都没有展开细说,但这是这样让本书干货满满,几乎没有一句废话. 下面是一些笔记. Web的本 ...

  6. 跨终端Web

    1.终端vs设备 H5页面运行在同一设备的不同终端下. (1)Web浏览器. (2)微信.QQ浏览器. (3)移动App的Webview. (4)TV机顶盒. 2.跨终端的实现方式 (1)响应式 存在 ...

  7. 浅谈移动优先的跨终端Web 解决方案

    1.基准 我们定义测试基准和开发基准,也就是说我们定义我们在哪些浏览器上去进行调试. 左侧图主要是定义PC上的基准,其中A级项目中必须支持,B级可选,C级观察. 2.检测 主要是终端检测 这是一张架构 ...

  8. [已读]跨终端web

    13年去听阿里技术嘉年华,鬼道分享了<移动优先前端产品的探索>.今年我买这本书,事实上是被高大上的目录吸引→ → 买来后发现,嘿,似曾相识啊,但还是老老实实得花一下午把书翻了一遍.翻完之后 ...

  9. linux系统可执行文件添加环境变量使其跨终端和目录执行

    在命令行终端输入:echo $PATH 回车可打印出PATH变量对应的路径 现有一可执行文件qtFirstC,文件所在目录为:/home/lolors/qtFirstC 此时test只能在此目录下运行 ...

随机推荐

  1. Spring In action chapter1_wiringBeans

    Automatically wiring beans Spring attacks automatic wiring from two angles: Component scanning-Sprin ...

  2. String、StringBuffer、StringBuilder的一些小经验……

    一说String.StringBuffer和StringBuilder,想必大家都很熟悉,这三者经常在我们的面试题中出现,我也是看到了关于这三个的经典面试题,才触动了我之前工作中的一些经历,故而根据我 ...

  3. JS-sort排序

    var arr = [ 'c', 'd', 'a', 'e' ];// arr.sort();// alert( arr );var arr2 = [ 4,3,5,5,76,2,0,8 ];// ar ...

  4. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

  5. JS实现回到顶部效果

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. css中关于position属性的探究(原创)

    关于position属性的设置,头脑中一直觉得不是很清楚,所以借助这次机会单独自己测试了一下,记作学习笔记.   首先,css的position属性包含下面四种设置情况: static:默认属性.指定 ...

  7. 深入浅出C#中的静态与非静态

    C#语言静态类 vs 普通类  C#语言静态类与普通类的区别有以下几点: 1)C#语言静态类无法实例化而普通类可以: 2)C#语言静态类只能从System.Object基类继承:普通可以继承其它任何非 ...

  8. struts2.5框架使用通配符指定方法常见错误

    struts2.5框架使用通配符指定方法(常见错误) 在学习struts框架时经常会使用到通配符调用方法,如下: <package name="shop" namespace ...

  9. 利用反射实现类通用的DAO层

    public void add(Object object) throws SQLException { ResultSet rs=null; PreparedStatement ps=null; C ...

  10. linux延时关机

    04.shutdown +2 "The machine will shutdown" # 2min 后关机,并通知在线者 05.shutdown -h now 立刻关机,其中now ...