WebApp框架发展趋势及现状分析【转】

WebApp框架发展趋势及现状分析【转】
摩尔定律作为指引PC发展最重要的定律,同样也在移动设备的发展上起着重要的作⽤。国内某款按照互联⽹思路开发⼿机的⼤佬曾宣称:⼿机CPU的发展速度可能会超过PC的发展速度。按照这个思路可以预见,⼿机的处理能⼒将会达到甚⾄超过PC的处理能⼒。与此同时,⼿机浏览器的处理能⼒将会和PC浏览器能⼒不相上下。
在硬件飞速发展的同时,操作系统和软件的更新也在快速演进。继iOS超强的硬件加速能⼒之后,在Android 4.0中,为系统默认引⼊硬件加速功能成为了最⼤卖点。这将会为Android系统带来更加流畅的界⾯体验,同时也会为浏览器带来更好的Canvas绘制性能以
及CSS Animation的效果。不仅如此,在2012年2⽉,Chrome for Android的发布也进⼀步推动了⼿机浏览器的发展。Chrome for Android直接移植了桌⾯版Chrome 16.0的代码,同样延续了Chrome在启动速度、渲染速度、⽹页加载速度以及基于V8引擎的JavaScript执⾏速度这些可以秒杀同⾏的能⼒。
快速发展的硬件加上来⾃浏览器的⾰新,这些都成为推动Web App在移动设备上发展的利好消息。尽管如此,硬件和Chrome在移动设备上的发展仅是基础平台的发展。正如在PC+Windows时代⼀样有着各种功能强劲的框架⼀样,Web App的发展需要各种基础的开发平台、框架以及库的普及和推⼴。本⽂将集中探讨⽬前⽀持Web App的各种框架以及平台的发展状况和不⾜。
Web App所依赖的框架以及库
在Web App的发展中⼀直有两种观点:
Web App就应该延续Web⼀贯简单、灵活的风格,延续Web的开发模式和理念,哪怕在移动设备上也是如此。
Web App应该冲击和模拟Native App的⾏为,⽤Web的技术来开发出类⽐Native App的程序。
尽管这个问题已被讨论过很多遍,并且⼤众认为它们各有长处,会占据各⾃擅长的开发领域很长⼀段时间。但我认为,Web相关的技术⼀直在侵蚀Native App的领地。尤其是在JavaScript的语⾔进化以及开发能⼒越来越强的今天,基于AJAX的应⽤越来越丰富,使得前端的开发能⼒越来越强,承载的功能也越来越多。因此,在Web App的发展过程中,各种类⽐Native App的框架和库会越来越多,这也使
得Web App所能够具有的开发能⼒越来越倾向于Native App。
那么,在移动领域Web App的发展过程中,将会需要和出现怎样的框架和技术⽀持呢?
基础的调试⼯具。对于任何开发平台来说,这是最为基础的开发⼯具和需求。⽬前在PC浏览器中,Chrome、IE、Firefox都提供了强⼤的从资源⽂件浏览、CSS应⽤规则监控、⽹络请求监控以及JavaScript断点执⾏的调试⼯具。
UI层的组件/框架。对任何⼀种Native App的开发语⾔来说,这些都是基础的⽤来搭建⼤规模上层应⽤的原材料库,在这个基础之上才会演化出各种各样的编程模式。从VC++对应的MFC,到Delphi对应的VCL,到Java对应的AWT/Swing莫不如此。尽管因为Web的特殊性,基于HTML的页⾯元素标签构建异常简单,但对于复杂的混合交互控件,仍然需要UI的组件/框架的⽀持以作出绚丽的效果。
数据以及业务逻辑的组件/框架。从缓存到配置⽂件、数据处理、⽹络请求等各部分的组件/框架,会成为开发各种信息系统、具体业务相关企业信息化系统的主要需求。这些会成为简化企业信息化开发,各种⾏业应⽤最为直接和有效的有利⼯具。正如.NET中的ADO.NET以
背心袋及Enterprise Library。
跨平台以及与移动设备硬件能⼒相关的框架。如果不涉及到具体移动设备的固有能⼒(⽐如打电话、发短信、调⽤联系⼈信息等涉及本地数据相关的能⼒),Web App天然就是跨平台的。然⽽,如果需要和移动的平台能⼒结合在⼀起,那么,就需要有相关的跨平台框架利⽤统⼀的数据接⼝,来帮助Web App获得Native App的能⼒。同时,伴随着浏览器能⼒进⼀步成熟,Web App会越来越不依赖于第三⽅的跨平台框架。例如现在可以看到的获得地理位置信息,以及通过Web GL直接访问GPU来获得3D的能⼒等。
锌铝镁
当这些能⼒和框架开始完善时,Web App就会得到越来越多开发者的⽀持,基于这些技术和框架开发
的Web App的功能也会越来越强⼤。
现有移动框架上的发展状况
框架的成熟会进⼀步催⽣应⽤的实现和普及。根据前⾯对框架能⼒的分析以及评估,我们可以⼀⼀对号⼊座,然后静观业界的发展。
基础的调试⼯具。在之前的移动设备上浏览器的功能⽐较单⼀,仅能实现基本的浏览功能。在2012年2⽉发布的Chrome for Android中,已经可以看到,这⼀块⼯具已经被Google率先补了起来。Chrome for Android提供了通过USB连接PC,可以利⽤Web来调试⼿机上页⾯。这对所有开发Mobile Web页⾯以及Web App的开发者来说都会是⼀个利好消息。
UI的组件以及框架。jQuery可以认为是最强的JavaScript Library之⼀。注意,是Library⽽不是Framework。他本质上是简化和JavaScript的开发⼯作,通过⼤量构建好的Library可以快速帮助开发者实现各种各样操作DOM以及CSS的效果。在移动设备商,由AppMobi推出
10 18 100 101的JQ.Mobi号称是重写了jQuery在移动设备上的实现,仅有3KB的⼤⼩完胜jQuery 35KB的体量。并且根据JSPerf Test的数据,它
在Android上⽐jQuery倍,在iOS上要快2.2倍。这对所有做移动Web App开发的⼈来说是⾮常好的
消息,速度和体验是⼀个⾮常关键的问题。可以预见的是jQuery和AppMobi会在这个领域⾓⼒,然后快速推动这⼀个领域的发展。上海化科
Sencha Web同样也是最知名的UI Library和Framework提供商。Sencha主打的Ext JS 4可以让开发者通过MVC的模式来开
发Web App。Sencha Touch则定位于Mobile上的HTML 5 Web App开发框架。除此之外Sencha Touch Charts则解决了⼤量图⽚控件的问题。在这个领域,Sencha⼀直是先⾏者,可以认为是从0到1的转变。尽管有开发框架过重的问题,但只要性能跟得上,相信Sencha会成为开发者⾸选的框架之⼀。在MVC框架这个战场上,还有Yahoo! Cocktails、Sproutcore、Backbone JS这样的竞争对⼿。除此之外,还
有Zepto、Ripple、LungoJS、Joshfire、Jo这些定位在移动HTML 5的框架。
在这个领域会是推动Web App发展最前卫也是最⽕热的领域,有理由相信各种开源的思路和组织,甚⾄
是Google、Facebook、Microsoft、Adobe这样的⼤公司直接介⼊,会越来越快地推动这个领域的发展,并且会成为Web App发展的最重要
的推动⼒量和基⽯。把握和跟踪好这些框架的变迁和⼤公司的最新动向,就会⾮常紧密地了解Web App的能⼒以及发展状态。
数据和业务逻辑框架。这部分最重要的在于和其具体领域直接相关,只有⼤型的平台公司才具备实⼒和技术推⼴能⼒将其脱离具体领域。因此,我预测会现有针对具体⾏业的⼀站式解决⽅案率先出现,⽐如电商或者垂直门户,然后再伴随Web App的兴起,逐渐往通⽤化发展。但最终可能还是会被IBM、Microsoft这些传统的专长于企业⽅案和开发框架的公司所占有。屋面天窗
跨平台的解决⽅案。在我看来,跨平台的解决⽅案实际上是各家企业试图进⼊到移动端最为关⼼的⽅案。任何企业进⼊移动领域都会⾯临移动设备分裂以及很难到合适的多平台移动开发者的问题,也会陷⼊是选⽤完全本地的实现⽅案,还是采⽤Web App的两难境地。如果选⽤本地⽅案,⼈⼒成本会很⾼;⽽选⽤Web App的⽅案,则在调⽤本地能⼒上还不成熟,还未看到成功案例。在跨平台解决⽅案领域,主要热轧板
是PhoneGap以及Titanium在这耕耘。以PhoneGap为⾸的公司跨平台服务提供商,本质上是希望能够达到⾮常完备的平台覆盖(⽬
前PhoneGap覆盖到iOS、Android、Windows Phone、 BlackBerry、webOS、Symbian等平台),来让⽤户更加顺⼿地实现调⽤本地硬件的能⼒。由于PhoneGap已被Adobe收购,甚⾄成为Adobe下注
移动互联⽹的重要⼀环,因此,PhoneGap可能会有更快的发展速度,从⽽拖垮竞争对⼿。除此之外,也会有⾮常多的采⽤类似于PhoneGap的衍⽣框架出现,它们或多或少会在某个专业领域有⾃⼰的优势,然后试图利⽤跨平台这个卖点,包装为半成品或产品来为企业⽤户提供服务。⽬前国内已经出现这样的公司在开拓市场。
总结
根据如上分析,相信读者对Web App在未来技术领域可能会出现的框架和技术会有了⼀定了解,也能到合适的切⼊点来了解以及评估⽬前已有的技术,为⾃⼰的技术领域作出合适的选择。
我感觉Web App的普及和推⼴速度⽐想象中要快。我曾和朋友探讨过两个问题,在这⾥,以我对这两个问题的回答作为结尾。
Web App的发展和普及差什么?本⽂已对技术能⼒的差距做出了回答。那么,在这些技术能⼒中,哪⼀个⽅⾯会成为影响Web App发展的最⾄关重要的点?我认为,最重要的就是UI框架的发展。因为有了这⼀块的发展,能够低成本地快速构建出性能好、交互能⼒强的Web应⽤,以这些早起的开发者⽤强⼤的Show Case来带动和推动Web App的进⼀步发展。
如果Web App的这些框架都具备了,跨平台的⽅案如何选择?我认为,从开发成本上来说,毫⽆疑问
Web App的成本低。业界期待的就是类似于当时.NET和J2EE技术⽐拼的PetShop的Show Case、样板产品以及成功案例。⽽对于PhoneGap这样的框架来说,从更长远的⾓度来看,这些都只是中间状态。未来HTML5的标准和浏览器的发展,会慢慢吞噬PhoneGap这类跨平台解决⽅案的市场。总之,这本质上会
是Google、Microsoft、Apple等公司联⼿挤压Adobe的战争。
⽐尔·盖茨曾说:“⼈们总在短时间内⾼估技术对社会的影响,⽽在长时间中⼜低估重⼤技术对社会的影响。”Web App的框架可能就是这样⼀种快速发展的重⼤技术,就让时间来证明吧。

本文发布于:2024-09-21 19:40:29,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/194154.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:框架   发展   开发   移动   技术   速度   领域   跨平台
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议