首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

企业使用移动APP偷工减料的秘密

2012-06-29 
企业应用移动APP偷工减料的秘密??????? 偷工减料,让没有能力从事移动开发的团队,也能进行移动开发。偷工减

企业应用移动APP偷工减料的秘密

??????? 偷工减料,让没有能力从事移动开发的团队,也能进行移动开发。偷工减料,但做出的成品,质量并不亚于完全原生代码开发的应用。这同样使得从事开发的企业能够省钱少力。何乐而不为?偷工减料,同时也可以大大加快开发速度。

??????? 企业移动APP开发,现在多数采用对HTML版进行封装。所以,一般我们称APP有两类,一类是NATIVE APP,那就是说,IOS肯定是完全OBJECT C++源码的。ANDROID肯定是JAVA源码的。另一类,就是使用相关的封装工具,瘵MOBILE WEB APP包装成NATIVE APP(所以,我们称为封装APP)。

??????? 这里有几点:第一,如果快速做出MOBILE WEB APP。这就需要对应的开发框架。则这类框架是很多的。列举如下:

baseJS

?

官方网站:http://paularmstrongdesigns.com/projects/basejs/

?

一套为Safari, Firefox和Mobile Safari设计的轻量化javascript framework,目前和以后都不支持IE。

?

iAd JS

?

官方网站:http://developer.apple.com/iad/

?

iAd JS是Apple为了iAd广告而设计的javascript framework,只支持iOS4以上的iPhone和iPod Touch。不过已经有开发者把它用于app的开发。需要和Apple付费申请iOS Developer Program才能使用。

?

iUI: iPhone User Interface Framework

?

官方网站:http://code.google.com/p/iui/

?

iUI是一套包含Javascript library, CSS和影像的iPhone web app framework,能够让web app有和native app相同的外观,并提供屏幕旋转侦测。

?

Jo HTML5 mobile app framework

?

官方网站:http://joapp.com/

?

另一个为行动装置设计的轻量javascript framework,对于HTML5的支持较其它framework丰富,包含WebQL, Audio。设计上比较特殊的部份在于UI组件的抽象化,因此能够在不同的装置上显示对应的UI。

?

jQTouch

?

官方网站:http://www.jqtouch.com/

?

jQTouch是一个jQuery的外挂,jQuery的开发者能够用最短的时间开发iPhone web app,支持自订主题和extension。

?

jQuery Mobile

?

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

?

jQuery和jQiery UI的行动版本,强调跨装置(Smartphone和Tablet)跨平台( iOS, Android, BlackBerry, bada, Windows Phone, webOS, symbian和MeeGo ),提供jQuery核心与UI widget。

?

PhoneGap

?

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

?

PhoneGap是一套开发原始码的包装软件 (Wrapper),能够把Mobile Web App包装成原生软件,支持iPhone/iTouch, iPad, Google Android, Palm, Symbian和Blackberry。透过PhoneGap所提供的Javascript library,便可以取得联络人、加速计、位置信息,还能控制震动。

?

Sencha Touch

?

官方网站:http://www.sencha.com/products/touch/

?

由ExtJS、jQTouch和Raphael(一个SVG library)整合而成的HTML5 mobile web app framework,支援iPhone, iPad与Android触控装置。具有完整的touch event (tap, double tap, swipe, tap and hold, pinch和rotate)、data integration (Ajax, JSONp及YQL)和完善的UI组件。

?

iWebKit

?

官方网站:http://iwebkit.net/

?

一个轻量的iPhone mobile web app freamework,主要功能在于利用CSS3仿真navitve app的外观。

?

MooTouch

http://dailyjs.com/2010/03/24/mootouch/

?

官方网站:http://gist.github.com/341230

?

MooTools javascript framework的外挂,目的在于模拟iPhone native UI。

?

Titanium Mobile

?

官方网站:http://www.appcelerator.com/products/titanium-mobile-application-development/

?

Titanium Mobile让你使用javascript、HTML5和CSS3就能打造iPhone和Android native app。因为它与OS深度整合,因此它能够使用Camera、存取文件系统、本地数据库,在通讯方面则支持SOAP和YQL。如果功能还不够,Titanium Mobile也允许使用Objective-C和Java扩充,再运用javascript呼叫。

?

PastryKit

官方网站:无

源文件:

http://help.apple.com/iphone/3/mobile/dist/PastryKit-ug-compact.js

http://help.apple.com/iphone/3/mobile/dist/PastryKit-ug-compact.css

Apple官方自己使用的javascript library,在iPhone上Safari预设书签里的iPhone使用手册(用iPhone打开才看得到效果)就是使用PastryKit打造而成的。PastryKit能够让Mobile Safari有着和native app有相同的外观(隐藏网址列、固定位置的工具列、重新定义页面卷动)。因为不是公开的framework,因此目前没有正式的文件,目前仅有零星几篇介绍和功能说明。

?

UiUIKit

官方网站:http://code.google.com/p/iphone-universal/

?

UiUIKit是一个模拟iPhone native UI的HTML/CSS3 framework,并提供原始的PSD影像文件。

?

Unify

?

官方网站:http://unify.github.com/unify

?

在destop, smartphone和tablet上模拟native app的web app framework,能够与Adobe AIR和Phone Gap整合,算是支持平台最广的framework,不过在2011 Q3才会提供tablet的UI组件。

?

WebAPP.Net

官方网站:http://webapp-net.com/

?

一个轻量化的javascript iPhone web app javascript framework,提供基本的UI组件与AJAX功能(附php proxy供跨网域存取)。

?

XUI

?

官方网站:http://xuijs.com/

?

PhoneGap的开发团队认为现代javascript framework (例如:jQuery, Ext, MooTools等)在行动装置上加载过于缓慢。因为这些framework都有很强大的跨浏览器兼容性,而在手持装置上这些并没有必要。于是他们打造了为行动装置浏览器最佳化的XUI。XUI目前支持WebKit, Fennec和Opera,未来也有计划IE Mobile和BlackBerry。

语法与jQuery相近,实作了方便的选取器, DOM操作, Event handeling, Style, Fx与XHR。

?

zeptojs

官方网站:http://github.com/madrobby/zepto

?

为行动装置最佳化的javascript framework,兼容于iOS 4+, Android 2.2+和webOS 1.4.5+,语法与jQuery相近。

?

也许,这些资料有些老了,可能还有更多新的。比如:

?

Jo HTML5 Mobile App Framework
http://joapp.com/

?

?

??????? 这些不同的Mobile Web App Framework,我认为在功能上应该可分为三大部份。

?

UI Component:提供适用于触控屏幕的UI组件Javascript Library:让开发更有效率的Javascipt函式库。Wrapper:把Mobile Web App包装成原生软件 (Native App),同时提供一些function让javascript可以存取一些底层的功能(例如:相机、档案系统、各类sensor)。

?

??????? 实际上,框架第一步提供的是开发,第二个更为重要。那就是封装。上述框架中提供Wrapper的据本人所知,只有phoneGap和Titanium Mobile。 当然还有更多的第三方的Wrapper可用。

??????? 接下来,还有一项最重要的,那就是,你的APP与NATIVE? APP质量上的差别。其实,差别只在流量这一方面。因为,你的APP的界面定义是从服务器端下载下来的。NATIVE APP只要下载与安装一次。

??????? 不过,你的APP有一个最大的优势,那就是,你不需要不断更新,你会自动推给用户新功能与新版本。

??????? 为此,我们需要扬长避短。那就需要设法节省流量。好在,现在同样也有一些新技术支持我们这样干,这是什么呢?JS客户端模板引擎。通过JS客户端模板引擎,我们的界面只下载一次,后面均是数据交换。那么,我们的流量实际与NATIVE差别不是很大了。

????????JS客户端模板引擎目前也是相当多的。比如:

Nano 纳米 -? jQuery的模板引擎
The “template” binding
JsViews:下一代jQuery的模板
JsRender:下一代jQuery的模板
Google-jstemplate
jQuery的模板插件
jQote2 -? JavaScript的模板改组
kite JavaScript模板引擎
mustache.js
Tempo

??????? 当然,上面很多是基于JQUERY的插件。相信,基于其它移动开发框架的肯定有很多客户端模板引擎。

??????? 好了,秘密完全公开了。 公式是: MWAF + WRAPPER + JS TEMPLATE = NATIVE APP。

???????? 相信,根据此,很多企业也就能够开发自己的APP了。

?

?

?

?

?

热点排行