深入HTML 5应用开发

深入HTML 5应用开发

编辑推荐

  掌握最新web开发技术HTMLl5
  引领下一代Web开发潮流

 

基本信息

  • 原书名: HTML5 Geolocation
  • 原出版社: O'Reilly
  • 作者: (美)Anthony T.Holdener III    (阿根廷)Mario Andrés Pagella    
  • 译者: 秦绪文 李松峰
  • 丛书名: 图灵程序设计丛书
  • 出版社:人民邮电出版社
  • ISBN:9787115274946
  • 上架时间:2012-3-27
  • 出版日期:2012 年3月  
  • 页码:258
  • 定价 :¥59.00
  • 会员价 : ¥44.25(75折)
  • 校园优惠价 :¥44.25(75折)

http://product.china-pub.com/199114&csdnblog

 

 

内容简介

  《深入html 5应用开发》分两部分,分别对应o’reilly 公司出版的html5 geolocation 和making isometric social real-time games with html5, css3, and javascript。第一部分介绍的是w3c geolocation api,共6 章。第二部分介绍的是使用html5、css3 和javascript,利用等轴投影原理开发一款融入社交元素的实时游戏,共5 章。
  《深入html 5应用开发》适合所有使用html5 开发web 应用的人员阅读。
 
目录
html5 geolocation
前言   3
第1章  路在何方  9
1.1  地理定位的历史  11
1.1.1  公元前的地理定位  11
1.1.2  探险技术  11
1.1.3  20世纪的定位  13
1.2  gps的民用化  14
1.3  今天的地理定位  15
1.4  基本知识  15
1.5  定位方法  16
1.5.1  gps  17
1.5.2  ip地址  18
1.5.3  gsm/cdmacellid  19
1.5.4  wi-fi和蓝牙的mac地址  20
1.6  位置与基于位置的服务  20
1.7  今天的地理定位  21
1.7.1  手机应用  21
1.7.2  增强现实应用  24
.第2章  地理定位:不仅是经纬度  27
2.1  坐标系统  29
2.2  大地测量系统与基准点  32
2.2.1  地球的形状  32
2.2.2  公共基准  33
2.2.3  地图投影  35
2.3  高度、路线与速度  35
2.3.1  大地高度  36
2.3.2  路线  37
2.3.3  速度  37
2.4  精确度  38
第3章  地理定位api编程  39
3.1  w3cgeolocationapi  41
3.1.1  当前的api支持情况  41
3.1.2  其他浏览器的解决方案  42
3.2  功能更完备的w3cgeolocationapi  44
3.3  geolocation对象  45
3.4  取得用户位置  46
3.4.1  positionoptions  46
3.4.2  缓存的位置信息  47
3.5  更新用户位置  48
3.5.1  不需要轮询  49
3.5.2  清除监视操作  49
3.6  处理成功的请求  50
3.6.1  position对象  50
3.6.2  coordinates对象  50
3.7  处理请求返回的错误  53
3.8  隐私问题  55
第4章  地理定位和地图api  57
4.1  google地图示例  59
4.1.1  googlemapsapi简介  59
4.1.2  向google地图中添加地理定位  63
4.2  arcgisjavascriptapi的例子  70
4.2.1  arcgisjavascriptapi简介  70
4.2.2  向esri地图中添加地理定位  73
第5章  保存地理信息  81
5.1  kml  83
5.2  shapefile  86
5.3  数据库  89
5.3.1  sde  89
5.3.2  postgis  90
5.3.3  mysql  90
第6章  基于地理定位开发应用  93
6.1  地理营销  96
6.1.1  特价与新品  96
6.1.2  众包  96
6.1.3  特殊化  97
6.2  地理社交  98
6.2.1  持续增长  98
6.2.2  自动签到  99
6.2.3  双向数据  99
6.3  地理标签  100
6.3.1  数字媒体与地理标签  100
6.3.2  隐私与地理标签  100
6.4  地理应用  101
6.4.1  安全/跟踪  101
6.4.2  打车  101
6.4.3  搜索  102
6.4.4  移动商务  102
6.4.5  其他应用  102
6.5  html5与地理定位  102
6.5.1  辅助lbs的web应用  103
6.5.2  基于web的lbs  110
html5:等轴实时游戏开发
前言  113
第1章  图形基础:画布与精灵  119
1.1  使用canvas对象  121
1.2  创建平滑的动画  129
1.3  使用精灵  133
1.4  操作像素  138
1.5  为图像选择渲染方法  149
第2章  理解等轴游戏  163
第3章  游戏界面设计  181
3.1  web游戏中的gui设计和交互  183
3.2  实现gui  185
第4章  html5声音及处理优化  201
4.1  通过audio元素添加声音  203
4.2  用webworkersapi执行大计算量任务  213
4.3  本地存储和会话存储  221
第5章  推向市场  227
5.1  预防作弊及服务器端工作  229
5.2  通往最终游戏的路  235
5.3  对游戏作最后修饰  248
5.4  使用facebook添加社交功能  254


前言

  HTML5 Geolocation前言
  本书第一部分详细介绍W3C Geolocation API1。Geolocation API 支持以脚本方式访问与主机设备相关的地理位置信息。这个API 定义了一组对象,在JavaScript 中使用这些对象可以探知运行代码的设备位置。术语地理定位(geolocation)有时指找到某人位置的动作,有时候也可以指实际的位置。
  W3C Geolocation API 为浏览器带来了令人难以置信的能力。此前,只有那些在特殊设备上编写本地地理定位应用的开发人员才有可能使用定位服务。现在,开发人员可以自由地直接在浏览器中针对Web 编写地理定位应用,而且这些应用还具备“一次编写,随处部署”的优点。关于这部分的标题在继续讲下去之前,我想需要为这部分的标题HTML5 Geolocation 说声抱歉!从技术角度讲,Geolocation API 并不是W3C HTML5 规范的一部分。因此,HTML5Geolocation API 这种提法的确是错误的,我知道这一点。话虽这样说,我还是想请大家用Google 搜一搜“Geolocation API”或者“HTML5APIs”,看看结果中有多少条目以“HTML5 Geolocation”作为标题。相信你会发现,这样的条目非常少,除了W3C Geolocation API Working Draft——这个标题省略了HTML5 字样。此外,我在加州棕榈泉市(Palm Springs)举办的2011Esri Developer Summit 上,听了很多场有关JavaScript 的演讲。每一位演讲人在提到Geolocation API 时,也会提到HTML5,无一例外。这些人熟悉自己的GIS(Geographic Information System,地理信息系统),以GIS 为生,而且都在世界领先的GIS 软件公司工作。事实很简单,说到Geolocation,大家都会联想到HTML5。为了避免不使用HTML5可能给读者带来的疑惑,加之我和我的编辑都谁想不出来给这部分起个什么名字才更时髦,结果就只能选HTML5 Geolocation 了。
  这部分适合所有想在Web 应用中使用W3C Geolocation API 的开发人员阅读。前几章详细介绍什么是地理定位,地理定位的历史以及地理定位今天的应用现状。前几章是有关地理定位的简要教程,可以帮助读者理解这个API 的大致情况。假如你有GIS 行业的从业经验,只想知道怎么在自己的应用中使用这个新的API,或者你已经对地理定位了如指掌,可以直接看第3 章关于API 实际应用的内容。开发人员肯定会对第3 章和第4 章特别感兴趣,因为这两章基于代码和示例讨论了这个API 的使用方法。非程序员也大致能够看懂这两章的内容,从而对这个API 能够做什么有一个更深入的理解。第6 章探讨了地理定位对我们未来生活的影响,介绍了使用Geolocation API 开发实际的应用。
  HTML5:等轴实时游戏开发 前言
  上瘾,沮丧;好玩,无聊;着迷,重复;轻松,费劲。
  上面每对词的意思看起来都是矛盾的,但作为一名即时战略游戏的玩家,我认为它
  们可以表达出我那如同坐过山车一般的心情。当初,在EA/Maxis 的《模拟城市》(SimCity)、《模拟城市2000》,Chris Sawyer 的《运输大亨》(Transport Tycoon),还有Bullfrog Productions 的《主题医院》(Theme Hospital)等这些令人心醉的游戏上面,我花了数不清的时间。我一直很纳闷,为什么我的朋友当中只有几个人(都是那种极客型的人)玩过这些游戏。
  然而现下的情况是,无论从小孩子到初中生,从老太太到足球妈妈,从守旧的兄弟会成员到计算机极客,几乎都在Zynga 的《开心农场》(FarmVille)或《城市小镇》(CityVille),Playdom 的《社交城市》(Social City)或Playfish 的《我的帝国》(MyEmpire)这些游戏上花过几个小时。但他们并不知道这些游戏还有祖先,那要追溯到等轴实时游戏1 的黄金时代。但恐怕他们决不会去碰当时的那些游戏。
  这个世界怎么了?
  等轴实时游戏最近得以爆发,一方面是因为Zynga 在他们推出的这种游戏中做到了“去粗取精、去伪存真”,另一方面则是由于消费者的兴趣发生了变化。这些游戏不会再让你因为没人“搬到你的城市”(《模拟城市》)而苦恼,相反,你可以把朋友加为邻居。这些游戏利用了Facebook 的社交功能改变了游戏的性质。结果,原先的无聊之处现在变得更具有交互性了,你不仅可以摆放物体,还能亲手创建它们,而且还可以手工收集由此而得到的分数。经过一段时间(一般几周)之后,当你觉得游戏没什么可玩的时候,游戏还会给你一些任务,让你跟自己的朋友绑定在一起。最终,即便你不再玩这个游戏,你构筑的建筑物也会被保留,并将继续创造效益和分数。(在游戏业界,这种思想被称为异步交互或异步游戏机制。)一旦摆脱了挫折、乏味和重复(等轴实时游戏的三大杀手),那么这种游戏就会摇身一变,让人感觉上瘾、好玩、着迷、轻松(也可能是费劲,这要看你想怎么玩了)。加之跟社交有关的进度要求,转瞬之间它们就可以像病毒一样扩散得无所不在。说到这里,要理解Zynga 在本书写作时的估值高达100 亿美元(超过了世界上最大的“老牌”游戏公司EA),或者迪士尼花7.6 亿美元购买Playdom 就不足为奇了。很难对影响游戏可玩性的各个方面的重要性作出准确的估计。但是,只要尽力把各方面都做到尽善尽美,那么这种社交游戏就有可能一炮走红。
  与以前的即时战略游戏相比,等轴实时社交游戏的界面比较简单:就是一个“活动”的地图编辑器。你可以在区块矩阵(通常把它叫做“网格”)上摆放任何物体。而有些物体——在我们这里是建筑物——可以在每T 时间内生成P 点分数。换句话说,即便我们不玩游戏,建筑物仍然能生成分数。我们最终将完成一个示例项目,在这个项目中,我们会开发一款名为《旅游胜地》(Tourist Resort)的游戏。用户在游戏中必须在某个地方建设一个度假村,以各种树作为装饰,还要摆放不同的店铺。每个店铺每T 时间要生成N 个金币;而用户拿这些收益又可以去购买更多的建筑。
  HTML5来了
  在等轴社交游戏不断进步的同时,开发这些游戏的技术也在发生变化。多年以来,开发在Web 浏览器中运行的精美且具有高度交互性的游戏会用到VRML(Virtual Reality Modeling Language,虚拟现实建模语言)、Java Applet、MacromediaShockwave、Adobe Flash、Microsoft Silverlight、Unity3D 等,这些全都是第三方、专有的解决方案,而且为了运行用它们开发出的游戏,用户还必须下载安装浏览器插件。更有甚者,为了开发这些游戏,开发人员不得不花大价钱购买IDE。然而, 运用HTML、CSS 和JavaScript 等Web 技术开发的游戏体验, 又难以跟Adobe Flash 等工具开发的体验相媲美。加上浏览器——特别是JavaScript 的运行速度慢、不原生支持视频、音频和本地存储,而且其中有的浏览器,如Internet Explorer 既不支持透明PNG 图像,又没有给开发者提供工具去实现哪怕是最基本的位块传输(bit-block transfer)功能。由于以上种种情况,Web 技术除了开发最简单的游戏,确实乏善可陈。
  幸运的是,随着时间的推移,大多数主流浏览器都逐步实现了HTML 和CSS 的最新版本:HTML5 和CSS3。与此同时,更大大提升了JavaScript 引擎的性能。今天,Mozilla Firefox、苹果Safari、谷歌 Chrome、Opera 以及微软Internet Explorer 9 等浏览器的最新版本,包括iPhone、黑莓手机还有基于WebOS、Android 的手机等智能终端中的浏览器,都已经实现了开发全功能视频游戏必需的大部分技术。
  基本要求
  我们不会面面俱到地介绍HTML5、CSS3 或JavaScript,因此需要读者至少掌握这些语言的基本知识。在此基础上,这部分各章将会围绕高效地利用这些技术,讲解针对所有智能手机、平板电脑或者电脑中支持HTML5 的浏览器开发游戏。这部分适合想要尝试开发游戏的Web 开发人员,也适合想把自己的经验移植到Web平台的游戏开发人员。
  我们将要利用等轴投影原理开发一款融入社交元素的即时战略游戏,这款游戏的目标平台是上述所有平台的“最小公分母”——移动设备。显然,如果这款游戏能够在移动设备中以适当的速度运行,那它就一定可以在PC 等更强劲的设备上运行。

 

 

你可能感兴趣的:(JavaScript,html,游戏,html5,api,浏览器)