如此繁荣的移动webapp开发市场:总结当下的一些移动web开发套件

写在前面:html

由于移动市场的盛行带动了移动社交、移动购物、手游、智能化硬件等多个新兴领域。智能终端硬件水平愈来愈高,运行其上的web浏览器能力也愈来愈强,加上HTML5\JS\CSS的蓬勃发展,Web已经可以展示出很是不错的体验。可是单纯浏览器中的web仍是不能代替本地原生应用,由于通用浏览器还不能方便地调用移动设备的本地资源例如硬件设备、本地文件。后来就有人想到了,为啥不能本身作一个可让web方便访问本地资源的专用浏览器呢?这就有了如今移动Web应用开发套件了。这里面涉及两个东西:jquery

1.运行框架:上面说的专门的浏览器,其实也能够理解为一个跑JS\HTML5\CSS的虚拟机。咱们写的web代码能够在虚拟机上运行,而且这个虚拟机定义了经过JS\HTML5\CSS来访问智能终端本地资源的API。若是把这个虚拟机与web代码合并打包并发布,就能够生产一个原生应用了。ios

2.UI框架:HTML5\JS\CSS组合的UI框架。单纯JS\HTML5\CSS若是本身写漂亮的UI仍是很费力的,你得定义不少CSS,制做不少素材图片。其实普通web已经有了一些js库或者叫框架,如:EXTJS、JQuery等。。。那么移动端有吗?有的!最出名的例如JQuery Mobile。web

可是,在web领域,不少项目都是开源的,因此思路一通以后,好多相似的项目涌现出来。那笔者如今就来总结一些,市面上看上去比较火,或者商家不停炒做的一些开发套件吧。数据库

阅读前的约定:笔者暂且将运行Web代码的虚拟机或者将web代码可以部署到智能终端的开发套件为,运行框架。将用于移动Web应用开发的JS/HTML5/JS开发框架,UI框架。apache

1、PhoneGap及cordova

1.官方网站:http://www.phonegap.com/api

2.性质:运行框架,几乎全兼容浏览器

3.说明:这应该是移动Web应用的先行者之一了。原来是一个小公司开发的框架,其当时出来的目的是为了跨平台,缘由是当时的智能终端有着百花齐放的状态(有兴趣能够读笔者另外一篇博文讲得当年N个移动操做系统的)。若是应用开发者想在那么多平台上都开发原生应用,是一件很是苦逼的事情。当时的这个框架的做者就是想到为啥不能用web开发应用呢。就有了最初的PhoneGap,后来这个公司被Adobe公司收购了,可见其前景很高。Adobe将PhoneGap核心代码提炼出来,贡献于Apache,取名 cordova。而PhoneGap用于Adobe本身的商业项目提供一一些增值服务,例如,在Dreamweaver编写基于phonegap的webapp代码而后直接在DW上PhoneGapBuilder服务,在Adobe的云端本身帮你把代码封装成移动平台的原生安装包。服务器

4.受权:Cordava是彻底开源的基于apache开源许可协议下,而PhoneGap就是商业版本的了。微信

2、Sencha Touch

1.官方网站:https://www.sencha.com/

2.性质:UI框架

3.说明:这个是大名鼎鼎的ExtJs的移动版。最新的版本可能将 移动版与标准版合并。代码大而全,属于重量级UI库。ExtJs这个项目源头也颇有意思,原来只是YahooMail的一个JS UI库,后来做者在其基础上扩展并最终造成了如今ExtJs,一个很是庞大的JS UI库。由于这个是UI库,因此你能够将其应用于普通移动Web上,也会给你的网页增色不少。

4.受权:sencha的受权有商业有开源,若是直接用他的js库基本是不收钱的,可是若是你想要用他的开发套件例如所见即所得的UI绘制套件就须要收费了。

3、JQuery Mobile

1.官方网站:http://jquerymobile.com/

2.性质:UI框架

3.说明:这个大名鼎鼎的JQuery的移动版本。跟JQuery同样是一个轻量级的JS库,同样使用HTML5+CSS+JS的技术。应为轻量级,因此在web加载时比Sencha有一点优点。缺点显而易见,UI控件太少了。由于JQuery Mobile 太普及了,也有不少第三方的扩展控件库例如JQuery Mobile Touch。比较有意思的是Sencha Touch 也融合了JQuery Mobile Touch。

4.受权:彻底开源,放心使用

4、Titanium

1.官方网站:http://www.appcelerator.com/

2.性质:运行框架

3.说明:这个框架其实并不能彻底是基于Web形式的框架,缘由刚开始它主要目的有点相似Node.js就是以JS为主要开发语言,支持HTML5的UI,程序自动封装为JS。最终框架把JS代码翻译为原生代码可以执行的代码。甚至JS代码能够直接调用原生ObjectC,后来适应潮流,Titanium在后续版本中陆续增长对于Web特性的支持,让其愈来愈像PhoneGap了。

4.受权:基本的使用时不要钱的,可是要使用SDK里面的高级功能,还有官方的开发套件都是要钱的哦

 

5、DCloud(国产)

1.官方网站:http://dcloud.io/

2.性质:运行框架+UI框架

3.说明:这个DCloud,使用的运行框架的标准叫HTML5+是这个公司本身助推的标准,而对应的运行框架叫HTML5+runtime。另外还提供一个UI框架叫MUI。另外该公司还发布了针对HTML5+\MUI的Web开发套件HBuilder(笔者有一篇简单介绍词IDE的文章)。这个HBuilder确实是一个亮点,能够一个很不错的Web Js 编码环境,语法高亮提示、代码导航等很不错。算上一个比较有良心的国产JS开发环境了。虽然我尚未用HTML5+跟MUI,可是光Hbuilder这一个产品就令我对其大有好感。

4.受权:目前全部项目都是开源的,随便用。

6、WeX5(国产)

1.官方网站:http://wex5.com/cn/wex5/

2.性质:UI框架 基于PhoneGap,集成本身的前段UI框架

3.说明:国产目前涌现了不少基于PhoneGap框架的一些套件,他们基本都是提供一整套解决方便,例如现成的皮肤,现成的先后台程序,固然你也能够基于现有的东西修改一些。能够一块儿搞定微信、原生应用、移动Web.这类套件的操做思惟让我感受感性Discuz的思路。因此笔者拿出一个说明一下,其余相似,我就不说了。

4.受权:彻底开源,固然他也有商业版本的。叫BeX5.

7、APIClond(国产)

1.官方网站:http://www.apicloud.com

2.性质:UI框架+运行框架+集成服务器端

3.说明:这个国产项目比WeX5这类项目还智能化,你甚至不须要有服务器,彻底用APIClond的存储、数据库、web服务器等等服务器应用,他们称之为云,而后你开发的服务器应用被部署到APIClond的服务器上(固然她调用服务器点有严格的API接口),你本地web代码经过服务器端部署打包成原生安装包,也就是所谓的云编译。噱头十足啊。确实对于一些想快速开发应用的小企业,仍是满方便的。

4.受权:简单实用不要钱,可是要足够的云资源例如数据库,云存储空间,那就是要收费了

 

另外其实除了web形式的跨平台移动应用解决方案外,还有一些其余的解决方式。例如.net的方式

号外:xamarin

1.官方网站:https://xamarin.com

2.性质:运行框架+UI框架 (基于独立的C#语言)

3.说明:mono是.net的开源项目,后来mono的全部公司Novell被收购后,mono项目好似不行了。据说其中的一些成员出来组成公司xamarin继续mono的使命。xamarin的原理就是让C#代码直接在各类智能终端上执行。目前ios跟Android没有太大问题。其实这类解决方案的思路跟移动web相似,只是开发语言换了对应的运行框架也要换一下。可是好处是对于熟悉原有C#的语言的工做者不须要再熟悉其余的语言就能开发相应的移动应用,再者对于C#这类成熟的编译型高级语言,其编译器的效率应该是高于JS这类解释性语言的。

4。受权:目前收费,可破解

相关文章
相关标签/搜索