伯乐真人游戏对浏览器的设置有那些淘宝网要求升级浏览器

微软是时候把 IE 浏览器开源了 - 文章 - 伯乐在线
& 微软是时候把 IE 浏览器开源了
在世界主流 Web 浏览器的发展历史中,微软的IE浏览器曾经独占鳌头:市场占有率高达98%以上。不过随着 FireFox 和 Chrome 的快速崛起,微软IE浏览器的份额一路下降,如何拯救IE浏览器?日前,国外媒体提出了自己的看法。以下为文章全文:
苹果公司的 Safari 浏览器是由一个和闭源的外壳组成;谷歌的 Chrome 浏览器是由和部分闭源的组件组成。Opera 浏览器也已经。Mozilla 的 FireFox 浏览器是的。
基于以上,我们发现:目前获得好评的浏览器基本都是内核开源。而IE浏览器却完全基于闭源的 Trident 引擎打造。这使IE浏览器在现在的浏览器竞争中处于劣势。Web 社区有各种各样的不同的意见和喜好的开发者,而不同的开发者经常看对方不顺眼,但是他们的多数对于开放还是持友好态度的。
开源内部渲染引擎,使公开讨论和实验新的特性变得非常容易,毕竟人多力量大。参与的人越多,就越能收到更加详细有效的改进意见和BUG反馈。开源使得发现BUG和加入新功能更加容易,这比闭源的那种一个工作室关在办公室里面自己找BUG和改进显然容易很多,也更加的高效。
有人会说按照这种说法。微软应当开源旗下所有的软件。当然本文不展开这些,只讨论浏览器内核开源的好处,而不是倡导让微软开源IE的全部组件,只开源其渲染引擎 Trident 就行了。事实证明微软是可以做到将自家的软件开源的:微软不,并且开源后的.NET确实在BUG修复和性能改进上加快了许多。微软完全可以学习开源.NET的路数,针对 Trident 引擎建立专门的讨论社区,将代码开源托管。建立完整的开源文档和讨论机制。
开源 Trident 引擎还可以让IE运行在其他平台,比如运行在最新的OS X上的IE浏览器,这在以前是不敢想象的。但是开源后这是可以实现的。开源后,移植工作将会变得可能,也许你会看到运行在Linux上的IE浏览器 ;运行在 Android 上的IE浏览器…等等。
虽然微软最近几年已经意识到IE浏览器的落后,已经在全力改进IE浏览器,甚至推出了一个完全不同的“Spartan”浏览器;且可能在Windows 10系统上,IE浏览器只会保留一个精简的版本。这代表微软可能大概确实已经对IE浏览器失去了信心。
是适合开源 Trident 了,把它托管在 GitHub 上,创建一个开源的项目,让全世界的开发者一起来维护,让它与 WebKit、Blink、Gecko 一起发展!
可能感兴趣的话题
开 开 开 源
关于伯乐在线博客
在这个信息爆炸的时代,人们已然被大量、快速并且简短的信息所包围。然而,我们相信:过多“快餐”式的阅读只会令人“虚胖”,缺乏实质的内涵。伯乐在线内容团队正试图以我们微薄的力量,把优秀的原创文章和译文分享给读者,为“快餐”添加一些“营养”元素。
新浪微博:
推荐微信号
(加好友请注明来意)
– 好的话题、有启发的回复、值得信赖的圈子
– 分享和发现有价值的内容与观点
– 为IT单身男女服务的征婚传播平台
– 优秀的工具资源导航
– 翻译传播优秀的外文文章
– 国内外的精选文章
– UI,网页,交互和用户体验
– 专注iOS技术分享
– 专注Android技术分享
– JavaScript, HTML5, CSS
– 专注Java技术分享
– 专注Python技术分享
& 2017 伯乐在线游戏浏览器
糖果游戏浏览器极速版是一款专为网页游戏打造的游戏浏览器,糖果游戏浏览器极速版有游戏加速、小号多开、键鼠录播、自动喊话、一键登录、闹种秒表等专业的游戏功能。太平洋下载中心为您提供糖果游戏浏览器极速版官方下载。...
好评率:0%
下载数:10次
糖果游戏浏览器是一款专为网页游戏玩家打造的游戏浏览器,拥有游戏加速、小号多开,自动登录、键鼠录播、自动喊话、释放内存、网络加速、游戏工具(老板键、闹钟、静音,秒表)等众多实用功能。...
好评率:70%
下载数:10次
360游戏浏览器是一款网页游戏专用浏览器,安全,稳定,开游戏速度快,具有方便的小号多开,静音,游戏修复,老板键等网页游戏专用贴心功能....
好评率:83%
下载数:4次
Xgamer网页游戏浏览器是Linebest公司自行开发的一款免费浏览器,安装简单,性能强劲,为玩家量身打造的专业游戏浏览器。它聚合国内外热门网页游戏,支持QQ空间等社区,与国内游戏运营商结成商务合作联盟。...
好评率:0%
下载数:3次
彩云游戏浏览器,它是第一款游戏浏览器。目前支持QQ农场、QQ牧场、QQ抢车位、QQ好友买卖、摩天大楼等QQ好多游戏呢,同时还可以多个QQ游戏账号同时登陆,实在在是太方便了!还能等什么,快点和我一起来玩彩云游戏浏览器吧!...
好评率:83%
下载数:3次
GT游戏浏览器是专门针对网页游戏玩家打造的专用浏览器,集成了当下最火爆的网页游戏库,即时更新最新开服游戏,为玩家提供最得力的网页游戏服务。...
好评率:89%
下载数:2次
极速游戏浏览器是一款集游戏加速、大小号管理、老板键、自动刷新、个性头像、网页静音于一体的游戏专用浏览器....
好评率:92%
下载数:2次
BBIN浏览器官方网站提供新版BBIN浏览器下载,BBIN浏览器官方网站致力于追求卓越品质,打造诚信品牌。本站提供BBIN浏览器下载。...
好评率:0%
下载数:1次
松果是一款针对页游玩家量身定做的专属浏览器软件。松果下的页游体验更加流畅,小号双开,游戏加速等常用工具一应俱全。独创海量应用“工具宝箱”提供时下最热门的页游工具,减少玩家疲劳操作,全面提高游戏体验。...
好评率:69%
下载数:1次
haoux网页游戏浏览器是一款真正站在玩家PK角度考虑而设计的游戏浏览器,如果您在使用的过程中,想到什么新的功能 或 发现什么问题 请到 留言本上进行留言 我们将尽快解决您提出的问题和要求。本浏览器永久免费,请放心使用!...
好评率:100%
下载数:1次
胡巴游戏浏览器是新一代的网页游戏浏览器,它具有网页游戏加速、释放内存、自动喊话,一键升级、网页游戏辅助、小号多开、自动登录、鼠标连点、键鼠录播等游戏辅助功能本站提供胡巴游戏浏览器下载。...
好评率:83%
下载数:0次
8090游戏浏览器是一款针对页游玩家量身定做的专属浏览器软件。8090下的页游体验更加流畅,小号双开,游戏加速等常用工具一应俱全,给玩家以超值享受。...
好评率:100%
下载数:0次
本类最新更新
热门关键词o &nbsp,&nbsp
Humble Bundle 是一个长期运作的“随便你付多少钱”的一系列独立游戏。现在他们跟 Mozilla 合作开始销售大量的 WebGL 浏览器游戏。
关于伯乐头条
专注于IT互联网,分享业界最新动态。
新浪微博:
推荐微信号
(加好友请注明来意)
- 好的话题、有启发的回复、值得信赖的圈子
- 分享和发现有价值的内容与观点
- 为IT单身男女服务的征婚传播平台
- 优秀的工具资源导航
- 翻译传播优秀的外文文章
- 国内外的精选博客文章
- UI,网页,交互和用户体验
- 专注iOS技术分享
- 专注Android技术分享
- JavaScript, HTML5, CSS
- 专注Java技术分享
- 专注Python技术分享
& 2017 伯乐在线JavaScript支持下网页游戏设计及制作流程,网页设计论文_学术堂
| [ 学术堂-专业的论文学习平台 ]
您当前的位置: >
JavaScript支持下网页游戏设计及制作流程
时间: 来源:学术堂 所属分类:
  伴随时代发展、科技进步,以计算机为基础、互联网络为支撑的信息化技术已经成为了当今时代中的主要因素,不但给人类的生活形态与精神面貌带来了较大的转变,最重要的是在很大程度上改变了人们的生存方式,使人类拥有了另一种生存的可能,同时由于它的发展,也催生了游戏方面的变革,尤其是&网游&的出现,俘获了千万颗童心未泯的心,其利弊得失是当今颇受争议的问题。然而,还是应该对于这一项技术加以关注,对基于JavaScript的网页游戏的设计与制作进行分析研究。
  1 概述。
  网页游戏通过浏览器实现无端网游,只需拥有一根网线、一台电脑即可实现无客户端下载的Web游戏。其最大优势在于程序设计者完全能够一面进行设计、一面进行调整、修改、补充工作。因其系统可以为操作人员提供一个人机交互的界面,从而采用问答的方式,在接收信息后,进行处理,这种在系统--操作者间的交互式处理方式,主要是进行交互作用的信息处理。相对而言,其直观性、可控性与灵活度有了很大的提升,是非交互式处理无法完成的优势所在,依目前发展情况来看,其普遍性在增加,应用范围在逐步扩大,而且备受广大用户喜爱,免除了来自于单道任务所带来的诸多效率问题,因而当操作者较慢的时候,它却可以进行其他任务的处理,节省了时间,使资源得到了充分利用,并且提高了计算机的工作效率。
  在结合工作方面,将分时处理、交互式处理两种处理方式有效结合起来,不但可以使多个用户进行同时对话;还可以与批处理方式结合起来;在每种结合方式中,都可体现出其独特的优势与特征,而且应用起来也比较方便。
  2 开发工具和设计构思分析。
  2.1 JavaScript.
  HTML技术用来制作网页,而JavaScript即是通过其自身作为脚本语言的功能对其网页进行功能添加,主要集中于动态功能方面,从而达到命名用户的操作得到响应的效果。其最大特点即是,当其源代码发送至客户端,尤其是在运行之前,没有必要进行任何过程的编译处理,通常来讲,主要是把文本格式中的字符代码发往浏览器,然而让浏览器独自进行解释性运行。由于它是动态、弱类型、基于原型的语言,内置支持类,所以在安全性方面,相对较差,其联系程度较高,独立性不强,因而如果出现一条无法运行的情况时,便会出现其下的语言也不能继续运作,从该方面来看,解译次数有时会偏多,所以,速度慢是其最大缺点。另一方面,作为编译语言,Java的源代码却需要编译,才能传递到客户端运行,因此,就需要搭建起一个平台,使解释器、仿真器,将特定的编译代码加以适度化的约束,以此来达到安全可靠的保障作用。
  2.2 CSS.
  层叠样式表或级联样式表,全称为Cascading Style Sheet,简称CSS.其作用在于对浏览网页进行控制,主要是通过一组格式设置规则加以实现,也就是通过CSS来达到这一目标。功能在于分离页面中的形式与内容,使二者可以独立存放于HTML文档之中。这样,有助于将维护站点的外观变得更加简便,也可以简化HTML文档代码,减少浏览器在加载过程中的时间。从CSS的特征分析,在修改页面方面易于实施,压缩网页体积,同时还能保持页面风格的完全统一。从其功能与作用的价值看,可降低成本,增加工作效率,因为它可以同时管理多个页面,并且根据保存方式,又可以通过改变CSS文档,达到从外部样式到站点中页面的格局的充化。也就是说,对于样式的更新,即可以将网站中的全部元素加以更新。
  3 网页游戏设计及制作流程。
  3.1 游戏背景、素材及举设计举例。
  根据要上的说明可知游戏需要其可玩性、效果性,所以,先应该以层叠式样表对将要完成的游戏所给定的各要素片理好,做了版面的整理工作,比如,游戏元素的图像选择以及整理工作等。另一方面,游戏素材应该能够透过它来实现一定的吸引人注意的效果。一般而言,除了网站中的撷取,还应该进行PS处理、自绘画等。
  举例,为了明白起见,以下以&打地老鼠&为具体的说明,呈现出交互式网页游戏的设计方法。首先,需通过鼠标,完成每一个操作,规则之一,即是不能击打那些白色的地老鼠,打击一次,会让玩家丢一次命。其次,设置一些带有炸弹的地老鼠,分别将其放置在游戏屏幕的左右两边,需对其进行不断打击,否则,即会发生爆炸,当爆炸发生后,也会损失一次命。第三,为玩家设置三次性命,全部丢掉即算GAME OVER.最后,在界面显示出玩家的最终成绩,即打死地老鼠的最终个数。而且在该界面继续显示开始或结束的选项,供玩家选择。该游戏的基础在于地老鼠的出现,需要有相应的控制方法,以使其可以随机在屏幕中出现,其实质即是地老鼠对应元素出现的高度伴随情况之出现。在击打地老鼠时,需要先将选中,再进行鼠标点击即可。
  以&打地老鼠&为例,其中需要四种办法达到对地老鼠出现的控制。第一种方法是randomBunny()函数,第二种方法 是bunnyJumpl()函数, 第三种方法是bu nny Jum p2 ( )函数, 第四种方法是bunnyJump3()函数。第一个主要是用来控制地老鼠的随机出现,而对于其它的三种方法,则可依次表述为对于各类伴随情况出现的控制。对于击打,需要通JavaScript中的两个函数来完成,分别是其中的onmousedown/onclick,其交互作用发生在击打地老鼠之时,两个函数在不同的时间发生,前者发生于点击时的事件发生,而后者是点击后放开时事件发生。具体来讲,若要击打到地老鼠,先应该有一个函数,也就是说,clientX,,clientY,getPosition,通过后面的数,即可得到对应的元素的横向与纵向坐标,当地老鼠处于所要打击的坐标范围内,即会被鼠标的点击所打中,也就是说,利用规范与判定来达到所需要的结果。上面未提到的白色地老鼠无需打击以及其他条件及要求,都需要对应的功能来实现。
  当出现白色地老鼠与带有炸弹时,便会失去生命,因此,需要根据这一条件设定一个lostlife的函数,其主题简单,在判别条件的设置时,只需要调动该函数,使其值与发生丢失生命值相合即合,也就是说,令lives.lostlife=1,当其不为空值时,执行的是live.lostlife++,当判断live.lostlife&=3时,即可调用函数endgame()去终止游戏,此时计时停止,等级信息、分数等一一输出到游戏界面。在开始与结束的菜单上,还需要设置两个不同的按钮,分别通过相应的函数进行设置。其中的基本原理是相通的,而且对于各种功能设置及处理方式区别也不是很大,主要是以对应元素与所需功能间的规范化与控制来达到最终所要达到的效果。
  除了这些功能设置外,还需要对整个游戏进行相应的控制。其主要内容即是通常玩家可以看到的时间与升级问题,在此中,需要通过计时条、计时条时间被控制来达到。比如, 在计时条中,resumlevel()控制,可以将计时条透明性、计时性进行相应规定,还可以利用计时条的滚动进行提与计时时间控制,这里就需要另一个函数leaveup()来完成,当这走完时,即可将其设计到升级条件之下,升级的根据也就是地老鼠所停留的时间的长短、数量等。
  3.2 演示及测试。
  首先,安装网页浏览器,以上面所说的&打地老鼠&网页游戏可知,不同的ID可以对不同的地老鼠进行控制,而每个对象的出现都是随机的,当击中白色掉一条命,当击不中带有炸弹者,发生爆炸,也会掉一条命。在演示与测试过程中,可以通过调试功能,对图片的变换进行闪烁界定即可。
  3.3 标准及要求。
  在基于JavaScript的网页游戏的设计与制作中, 需要对JavaScript客户端脚本语言有一个明确的认识、对其基于对象的编程思想加以把握,在具体的游戏开发项目中,先应该有一个合理的计划书与备忘录的制作,然后根据项目设计要求及标准,利用一些模块进行网页游戏制作。以下以最为基础,用途最广泛的连连看为例,来介绍作为一个可行项目的基于JavaScript的网页游戏的设计与制作实施过程。
  首先,应该在项目设计的基础之上,以设计方案,依次将网页制作、程序开发、测试、文档编写等完成。其要求在于将JavaScript 客户端作为脚本编程技术出发点,进行开发。在设计连连看网页游戏时,先对其网页界面进行整体上的布局,比如,从审美角度的要求,从广大客户需的角度来设定一些原则,将操作系统与界面之间的可操作性进行细致区分,比如在界面的上端可进行时间、初始化等信息的显示;比如设置难度系数易、难、困难等供玩家自主选择等;在界面下端可以设置游戏主体界面,将其位置布置到中位,调整好整体的比例与效果,其实也可以将其反过来,上下换位处理,只是在设计时,给定了一种习惯性,因而导致了最终的适应性,如果反过来,以手机自带的方式提供给广大用户,大多是可以形成其新的玩家习惯的。其次,在连连看游戏网页中,应该对其功能模块设计加以认真分析,功能模块设计,主要是需要了解清楚其中的基本功能需求为何,也就是说,如同上面的&打地老鼠&游戏一般,先确定清楚项目中的对象,并创建根对象;在游戏区的控制或能模块设计方面、游戏区功能模块设计方面等等,都应该先在程序中分级管理,也就是说按照文件的上录入进行分类管理,以项目工程的主到子进行分别建立,最后在完成一系列具体的制作之后,进行测试与演示,然后对其中的效果加以评估。无论是根据模板进行直接的设计,还是利用代码的方式进行编程设计,其结果都可达到最终的网页游戏效果。但是最主要的还是以上面所说的JavaScrip技术、CSS技术为运用基础,把交互式技术引入到网页中,从而实现网页游戏功能。
  4 结语。
  总之,笔者认为从技术的角度而言,基于JavaScript的网页游戏的设计与制作把网络在线小游戏变成了可能,提升了游戏的动态性,增加了机与人之间的交互作用,使可玩性得到了在线升级,随着文化主题的带入,该方面的游戏越来越受到追捧,但同时也应该防止因游戏上瘾所带来的麻烦,尽可能的在游戏的设计与制作方面,根据不同年龄阶级设置一些适应各层级的游戏项目,从而保护未成年人的健康成长。
  参考文献。
  [1]方蓓。基于JavaScript 的简易老虎机游戏的实现[J].软件导刊,2013(3)。
  [2]冯科融,王和兴,连加美等。基于HTML5的3D多人网页游戏实现方案[J].微型机与应用,2013(1)。
  [3]黎志雄,黄彦湘,陈学中等。基于HTML5游戏开发的研究与实现[J].东莞理工学院学报,2014(5)。
  [4]平淑文,潘珏羽,张学金等。基于HTML5和JavaScript轻量型动画框架开发[J].计算机技术与发展,2013(12)。
您可能感兴趣的论文
0 引言。 进入 21 世纪以后,随着电子计算机以及相关技术的迅猛发展和网络通信..
1网页设计视觉流程筹划 首先,什么是视觉流程?通俗的讲,就是人们在观看网页..
一、引言 如今,国家大力提倡素质教育和终身教育,人们在自身发展过程中对于信..
网页是人们通过计算机来获取信息时最直接点击和阅读的页面,近年来随着计算机网..
网页设计的目的是提供一种功能强大、使用方便、页面美观的形式,让浏览者能够方..
人们的生活和传播息息相关,而传播则是依靠语言这种载体来实现的。当出现不同语..
网页设计论文标签
返回上级栏目:2016 年我们对 JavaScript 期待哪些:浏览器之外 - WEB前端 - 伯乐在线
& 2016 年我们对 JavaScript 期待哪些:浏览器之外
浏览器之外的 JavaScript——2016 年我们期待些什么
这是三篇连载《2016 年我们对 JavaScript 期待些什么》的第三篇。整篇文章取自我们的白皮书。今天的贴文集中于 JavaScript 语言本身的未来。第一篇涵盖了 JavaScript 框架的未来,,第二篇则涉及语言的演进,。
过去几年,JavaScript,一种为 Web 浏览器设计的脚本语言,已经广泛应用于各种软件应用中。加上 JavaScript 目前运行在服务端的代码,用来驱动 iOS 和 Android 的应用,甚至用来,已经很难找到一种不受 JavaScript 影响的软件生态系统了。
驱动 JavaScript 扩张到这些“新疆界”的部分因素是性能。然而,几年前在服务器上运行 JavaScript 还是不可想象的,谷歌 2008 年进入浏览器和市场点燃了性能竞争的战火,竞争的结果极大地提升了语言的运行速度。而最近像
这样的努力进一步推进了这一工作。
本文将讨论 JavaScript 框架的下一步发展,如用于运行服务端 JavaScript 的框架, 用于构建移动应用以及桌面应用的框架等。我们将听听众多直接构建这些解决方案的开发人员的看法。我们就从或许是 JavaScript 的第一个新疆界 Node.js 开始吧。
Node.js 是一个基于谷歌 V8 JavaScript 引擎的开源运行时环境。虽然很多公司、框架都试图在服务器上运行 JavaScript,Node.js 却是在服务端大规模运行的第一款运行时。
Node.js 写于 2009 年,此后即声名鹊起。,最近成立的 包括了诸如 IBM、Intel、Paypal 以及微软这样的公司。,其包含的模块数大概是 Java 和 Ruby 两者之和的两倍。
npm 包管理器的增长,图片来自
然而,Node.js 的成功并非一帆风顺。2014 年底,一群开发者借口现在的框架不活跃,没有新的贡献者参与进来,以及缺少新的发布,。这个新的框架,称为 io.js,迅速获得了追随者以及社区的支持,很多人担心会造成 Node.js 世界的长期分裂。幸好
在 2015 年 6 月实现了合并,消除了人们的担心。
合并的成果之一是形成了 LTS,即 。根据这个计划,Node.js 将每年实现一个 LTS 发布,并且对该发布提供 18 个月的积极支持。
这个开发周期的目标是,既满足希望处于技术前沿的开发者的需要,又满足大公司对未来数年能够依靠的稳定的发行版的需要。但这个开发周期对 Node.js 的未来也有重大影响。在我问及 Node 基金会的 ,2016 年 Node.js 最大的变化是什么时,他这样说:
“新的开发周期将是最大的变化。每年我们会有 2 次主要发行,但只有一次发行接受长期支持(LTS)。这比过去要多很多,而且过去我们从来没有真正的 LTS,这对开发者是一个很大的变化,对企业来说,也是一个采用 Node 的新机会。”
Mikeal Rogers Node 基金会
2016 年的 Node.js
2016 年期望有更多的用户采用 Node.js 及其包管理器 npm。大型企业(微软,IBM,Intel,Progress Software等等)对 Node 持续不断的支持,再加上长期支持计划这样的企业友好的举措,会刺激 Node.js 在企业中应用的增长,以取代 .NET 和 Java 这样典型的企业解决方案。
最新发布的 npm 目标是为客户端 JavaScript 提供更好的支持,以替换对客户端 JavaScript 包管理器如 Bower 等的需求,npm 中的模块数量有望持续指数级的增长。随着开发人员开始将其客户端脚本及 jQuery 插件注册到 npm 上,npm 将只会继续增长。事实上,按照 Mikeal Rogers 说法,增长的主要原因是 npm 是一个生态系统的生态系统。
“几年以前,我对 npm 的增长率进行了量化,画了一条预测曲线。那个时候,人们认为这太疯狂了,因为,预测曲线认为,要在 1 年多点的时间内,模块数量超过 100K,增长率曲线才不会是平平的。没成想,我们只在几天之内就超过了 100K,甚至我也被吓着了。
“你深入到 npm 增长的内部,你就会看到,推动增长的力量来自于 npm 是生态系统的生态系统。npm 是为各种各样的用例构建子平台的最好地方。此生态系统的某些部分一旦平稳下来,就会被新的快速增长的生态系统替换掉。”
Mikeal Rogers,Node 基金会
作为此说法的佐证,基本上本文中的所有的 JavaScript 解决方案——包括 Cordova、React Native、NativeScript——都使用 npm 作为其包管理器。在 npm 上简单搜索一下“jQuery”、“polymer”、“meteor”、“react”,就会对目前 npm 上庞大的规模有个概念。npm 是随着 JavaScript 应用的增长而增长,而随着 npm 应用的增长,Node.js 也随之而增长。对于软件领域里第一个主流的服务端 JavaScript 框架,其未来一片光明。
现在让我们把目光转向另外一些技术,这些技术不是在服务器上运行 JavaScript,而是用 JavaScript 来驱动移动应用。
PhoneGap 和 Cordova
与 Node.js 是第一个在服务器上运行 JavaScript 的主流解决方案很像,PhoneGap 是第一个使用 JavaScript 运行原生移动应用的主流解决方案。PhoneGap 最初由 Nitobj 创立于 2009 年,其后于。作为收购的一部分,PhoneGap 的源代码捐给了 Apache 软件基金会,从此该项目即以 Cordova 为名。今天,Cordova 是一个免费的开源框架,,而 PhoneGap 成为了由 Adobe 拥有的 Cordova 的一个发行版。
几年来,Cordova 一直在为自己那的名声而辩护,这名声起因于业界最有名的抱怨,因为这抱怨是来自于一个 2012 年最有技术影响力的人。
“反思最近这几年,我认为我们作为一个公司所犯下的最大错误,是将太多的赌注压在了 HTML5 上,而不是原生……因为它还没成熟。”
Mark Zuckerberg,Facebook
2012 年以来,很多公司都加入进来,向性能问题开战。包括 Ionic、Onsen 以及 Kendo UI Mobile 这些性能敏感的 UI 框架,,由 Crosswalk 提供的新的 web 视图,还有高质量的插件,
Telerik 已验证插件市场
除了上面公司提供的这些对性能的改进之外,移动操作系统厂家也提供了一些新的功能特性,如 ,等,极大地改进了 Cordova 的性能。考虑到这一点,我请前 Adobe PhoneGap 团队的成员
就 Cordova 的未来发表看法。
“Cordova 已经谨慎地走向稳定。我们尽力把事情做得简单,将一些功能特性分给插件接口,尽量与 Android M 及 iOS 9 的平台升级同步。已经反反复复了好几年,但‘小模块’的思维已经开始占上风,这让我很高兴。一线的开发人员可能看不到这些,除非他们要做自己的分发而对 Cordova 进行扩展。”
Brian LeRoux
2016 年的 Cordova
和 Node.js 很像,Cordova 的稳定性会吸引一些大公司,它们中的几家正在试水移动开发。使用 HTML、CSS 以及 JavaScript 开发移动应用的 Cordova 方式将会继续吸引 web 开发者,特别是和那些涉及到 Xcode 和 Android Studio 的原生开发相比。
尽管 Cordova 的应用持续增长,但其开发方式正在受到两个方面的挑战。一个是来自谷歌。谷歌正在推(progressive apps)的概念,这种应用表面看起来像原生应用,譬如启动画面,主屏幕定位,以及离线访问,其实是真正的 web 应用。渐进应用仍然处于早期阶段,而且其功能特点只局限于 Android 版本的 Chrome。期待谷歌在 2016 年将渐进应用的概念继续向前推进。
目前对 Cordova 最大的挑战来自 JavaScript 领域的最新进展:使用 JavaScript 构建真正的原生移动应用。
原生移动应用
2015 年出现了一种新的基于 JavaScript 的移动应用开发方式,叫做“”。和基于 Cordova/PhoneGap 的应用不一样,JavaScript Native 应用使用平台的原生控件及范式来构建用户界面,不用浏览器,也不用 web 视图控件。
JavaScript Native 框架试图为构建 iOS 和 Android 应用提供一种两全其美的解决方案:使用 JavaScript 来写应用逻辑(不再用 Java、Swift 等等),而用平台的原生用户界面 API 来构建应用,这样可以适配于原生操作系统,并且还能提供尽可能好的性能。
使用 JavaScript 构建的移动应用。点击此处查看源代码。
React Native 和 NativeScript 是 2015 年首批公开发布的 JavaScript Native 框架,后续又有 Fuse 和 tabris.js。不同的框架有不同的特点。例如,React Native 允许你重用 React 的 JavaScript 框架,而 NativeScript 允许你直接从 JavaScript 中访问 iOS 和 Android 的 API。但这些框架用 JavaScript 构建真正的原生应用的高阶途径是相同的。
对于 web 开发者来说,使用 JavaScript 构建原生应用的想法听起来很美妙,但与 Cordova 这样的框架比起来,这些 JavaScript Native 框架还是有些问题的。下面列出一些:
由于 JavaScript Native 框架不用浏览器,所以你不得不学一些与框架有关的 API 来搭建用户界面,而不像在 Cordova 中那样直接用 HTML。
因为 JavaScript Native 应用是原生应用,所以在构建大型应用时内存管理会成为一个问题,就像在原生的 iOS 与 Android 应用中一样。
最后,JavaScript Native 框架比较新,从而示例和教程也就比较少。相比那些已经活跃开发好多年的框架,这些框架本身也还不成熟。
关于这些框架在 2016 年会有什么发展,我分别问了 React Native 团队的 和 NativeScript 的产品经理 ,他们的回答都集中在稳定性上。
“对于 React Native,我们结束了畅想/原型阶段,现在进入了固化阶段。你可以看到大量工作在各方面展开:性能工具/优化,改进所有核心 API,更好的错误信息,修复边界情形……。这样,Facebook 内外的工程师就可以用来构建高质量的移动应用了。”
Christopher Chedeau(Vjeux),Facebook
“随着我们的用户基数快速增长,我们要确保用户有一个稳定健壮的框架来构建真正的应用程序。所以我们会持续在性能及调试工具上进行工作,以改进 NativeScript 开发者的使用体验。另外一个主要工作是与 Angular 2 团队合作,预计会持续整个 2016 年。”
Valio Stoychev,Telerik
2016 年的 JavaScript Native
2016 年,期待 JavaScript Native 的平台能够稳定下来,能有应用在这些平台上开发。随着 React Native 和 NativeScript 框架的功能集的固化,希望看到更多的围绕这些框架创建的工具,譬如 Telerik 自己的用来创建 NativeScript 应用的 Telerik 平台。
2015 年大肆宣传的 JavaScript Native 应用能否在 2016 年大规模推广开来,只有靠时间来说明了。不过,正在用这些框架构建的高质量应用程序(参见 和 )的数量预示着,使用 JavaScript Native 方式构建应用程序,其大规模推广应用尚需时日。
对于需要带有原生界面的原生应用的公司来说,和构建 iOS 应用(用 Xcode 与 Objective-C/Swift)以及构建 Android 应用(用 Android Studio 与 Java)比较起来,特别是考虑到很多公司的开发人员都掌握 JavaScript 开发技术这一点,则 JavaScript Native 框架是一个有竞争力的选择。
总之,对于 JavaScript 开发人员,JavaScript Native 应用代表了一个令人兴奋的新疆界。JavaScript 开发人员不用为了写一个移动应用而再去学原生程序设计语言。而且移动应用也不是 JavaScript 开发人员唯一涉足的软件领域——JavaScript 开发人员也将涉足传统的桌面应用。
传统上,如果想构建一款 Windows 或 Mac 应用,你得用平台专用的工具,譬如 WPF 以及 Windows Forms,或像 Java、Adobe Air 这样的跨平台接口。不过,就像本文所讨论的其他软件生态系统一样,基于 JavaScript 的解决方案正在慢慢进入这片领地。
这个地盘上第一个基于 JavaScript 的解决方案是 Intel 创建的 Node-WebKit,该项目于 2011 年底开源,现在称为 ,因为其内部实现从 WebKit 转到了 Chromium,工作机制类似于 Cordova,但用于开发桌面应用。
NW.js 由 Intel 开发,2011 年发布
NW.js 将一个 web 应用程序包装在一个原生的外壳中,这样就可以访问原生的桌面 API,如文件选择器、窗口菜单等等。这种组合让你能够用基于标准的 web 技术来写 Windows、OS X 以及 Linux 的桌面应用程序。时光快速向前推进几年,NW.js 就不是使用这种架构的唯一框架了。2015 年 4 月,,这是一个类似的构建跨平台桌面应用的框架。
GitHub 的 Electron 于 2015 年 4 月发布
Electron 是作为 Atom 的外壳而开发的(Atom 是 GitHub 的一款基于 web 的文本编辑器),现在已经与 Atom 分离开来,从而任何项目都可以使用。有 GitHub 做后盾,Electron 取得了爆发性增长,目前在 GitHun 上已经超过了 20000 颗星(很快就要赶上 NW.js 的 25000颗星了)。
Electron 也在 2015 年上了头条,因为微软新的跨平台 Visual Studio Code IDE 背后的引擎用的就是 Electron。快速浏览一下社区创建的 Electron 资源,你就会知道,Electron 在开发社区是多么地受欢迎。
2016 年的桌面应用
就像本文讨论的很多技术一样,对于构建桌面应用的基于 JavaScript 的跨平台工具,前景看起来一片光明。跟随像 GitHub、微软甚至 Slack这样的公司——不仅在 NW.js 和 Electron 基础上构建,而且还用 web 技术来构建原生应用——其他公司采用 web 技术来构建桌面应用会更有底气。受 NW.js、Electron 以及其他项目的推动,期待 2016 年能启动更多的新桌面应用。
2016 年 JavaScript 的新疆界
虽然这篇文章讨论的似乎是各不相干的话题——服务端代码,移动应用,桌面应用——讲的却是相同的事情:几年之内,在这些环境之中运行 JavaScript 将从不可思议变成主流。十年之内,JavaScript 已经从一个处理图像翻转效果的玩具语言,变而成为世界上最流行的程序设计语言。而且 JavaScript 的走向,似乎还没个尽头。
2007 年,Jeff Atwood 提出了著名的“能够用 JavaScript 写的任何应用,最终都将用 JavaScript 来写”,这份宣言似乎已经成了预言。JavaScript 已经到达了本文无法涵盖的地方,譬如通过 Johnny-Five 项目而运行在硬件上,以及作为第一类对象,用来构建运行在 tvOS 上的原生应用,这是 Apple 刚刚宣布的用于 Apple TV 的操作系统。
驱动 JavaScript 增长的原因之一,是为多范式软件开发构建单一开发模式的需要。企业,尤其是小企业,通常雇不起那么多开发人员,对所有人们今天使用的如此泛滥的操作系统和设备都具备专家级的知识。甚至对于 facebook 这样规模的企业,这也成为了一个问题。正如 Chritopher Chedeau 跟我们分享的:
“对我来说,今天开发界的悲剧在于,社区被语言所分割,我们甚至将其称之为一个个的生态系统。JavaScript、Java、Objective-C、Python、C++,等等。这里面有大量的浪费,因为每个生态系统都有相同的工具,诸如包管理器,IDE,核心库,知识库……
看一个具体例子。在 Facebook,每一个具体的功能特性都要实现 3 遍:用于 Web 的, iOS 的,以及 Android 的。更糟的是,要求一个工程师在这三个生态系统中都游刃有余是不现实的,所以我们通常都是用 3 个人来实现某个具体的功能特性。这很悲哀。
“为了解决这个问题,我的直觉是,我们需要一个单一的语言/生态系统。对于 React Native,我们选择了 JavaScript,但从大局来看,具体什么语言并不重要。重要的是,平台是唯一的。”
Christopher Chedeau, Facebook
JavaScript 快速成长,对于所有这些界别(移动,桌面,服务器,硬件)来说,正在成为一种切实可行的选择,其地位的唯一性正在使得人们的渴望成为现实,即只需构建一次。JavaScript 的快速增长,在 2016 年及以后是否能够持续,只有时间才能告诉我们。但跨越软件生态系统的 JavaScript 工具的风生水起,似乎预示着还遥无尽头。
记着这点,我要引用 Brendan Eich 的名言来结束本文:“。”
打赏支持我翻译更多好文章,谢谢!
打赏支持我翻译更多好文章,谢谢!
关于作者:
可能感兴趣的话题
关于伯乐前端
伯乐前端分享Web前端开发,包括JavaScript,CSS和HTML5开发技术,前端相关的行业动态。
新浪微博:
推荐微信号
(加好友请注明来意)
– 好的话题、有启发的回复、值得信赖的圈子
– 分享和发现有价值的内容与观点
– 为IT单身男女服务的征婚传播平台
– 优秀的工具资源导航
– 翻译传播优秀的外文文章
– 国内外的精选文章
– UI,网页,交互和用户体验
– 专注iOS技术分享
– 专注Android技术分享
– JavaScript, HTML5, CSS
– 专注Java技术分享
– 专注Python技术分享
& 2017 伯乐在线

我要回帖

更多关于 天猫要求升级浏览器 的文章

 

随机推荐