摘要:本文介紹了10款跨平臺(tái)打造移動(dòng)原生應(yīng)用的工具,旨在幫助開發(fā)者們提高自己的編程效率。開發(fā)者可以根據(jù)這些工具的特點(diǎn)自行選取,從而直接降低開發(fā)成本,間接快速捕捉市場(chǎng),提高收益。 編譯工具對(duì)開發(fā)者的影響是直觀的,開發(fā)者使用JavaScript等語(yǔ)言寫出應(yīng)用的代碼,再將它們編譯成原生代碼。通過(guò)原生的API,完成跨平臺(tái)的操作,最終分發(fā)到本地的應(yīng)用商店中。由此可見,編譯工具的選擇可以直接降低開發(fā)成本,整個(gè)團(tuán)隊(duì)可以間接地快速捕捉市場(chǎng)、提高收益。今天我們?yōu)榇蠹医榻B了10款主流的原生轉(zhuǎn)換編譯工具,開發(fā)者們可以根據(jù)不同的特點(diǎn)來(lái)選取,提高自己編程的效率。 1.Adobe Air Adobe Air是針對(duì)網(wǎng)絡(luò)與桌面應(yīng)用的結(jié)合所開發(fā)出來(lái)的技術(shù),可以不必經(jīng)由瀏覽器而對(duì)網(wǎng)絡(luò)上的云端程式做控制,是一款允許你利用現(xiàn)有的web開發(fā)技能(包括Flash、Flex、HTML、JavaScript、Ajax)優(yōu)勢(shì),建立和配置跨平臺(tái)(或跨操作系統(tǒng))的桌面RIA應(yīng)用。 其特點(diǎn)如下: 網(wǎng)絡(luò)應(yīng)用離線化:同傳統(tǒng)的Web相比,AIR的優(yōu)勢(shì)在于有客戶端的優(yōu)勢(shì),可以脫機(jī)運(yùn)行程序,在需要的時(shí)候偶爾連接一下網(wǎng)絡(luò),比如可以離線寫博客,發(fā)布的時(shí)候連接一下網(wǎng)絡(luò)。 跨平臺(tái)、低開發(fā)成本:跟傳統(tǒng)的桌面應(yīng)用程序相比,AIR程序可以跨平臺(tái),支持多操作系統(tǒng),開發(fā)成本較低。 出色的交互表現(xiàn):AIR憑借Flash技術(shù)本身的特征可以帶來(lái)更吸引人的交互表現(xiàn),相比其他傳統(tǒng)的Web技術(shù)要出色。 運(yùn)行速度更快:因?yàn)锳IR程序均是在本地運(yùn)行,而網(wǎng)絡(luò)應(yīng)用程序在網(wǎng)絡(luò)客戶端和服務(wù)器之間進(jìn)行調(diào)用,需要調(diào)用大量數(shù)據(jù)和代碼,所以AIR程序的運(yùn)行速度要快一些。 2.FireMonkey Firemonkey是一個(gè)基于CPU/GPU混合架構(gòu)的業(yè)務(wù)應(yīng)用平臺(tái),能夠幫助開發(fā)人員設(shè)計(jì)出Windows、Mac和iOS設(shè)備上的視覺絢麗的本地應(yīng)用程序。Firemonkey允許開發(fā)人員創(chuàng)建具有快速的本地性能、動(dòng)畫和圖像效果、企業(yè)級(jí)的數(shù)據(jù)連接以及交互式數(shù)據(jù)可視化的富HD和3D的圖形應(yīng)用程序。 3.Gideros Mobile 使用類似Flash的功能來(lái)開發(fā)游戲或者應(yīng)用,雖然不如上面的一些工具簡(jiǎn)單,但你也無(wú)須懂特別高深的編程語(yǔ)言,還能對(duì)已有的代碼循環(huán)利用,開發(fā)好之后,可以在電腦或者其它設(shè)備上立即進(jìn)行測(cè)試,無(wú)需反復(fù)導(dǎo)代碼。 4.J2objc J2ObjC(Java to Objective-C)是Google出品的一個(gè)開源的命令行工具,允許開發(fā)者將Java代碼轉(zhuǎn)換成適用于iOS平臺(tái)的Objective-C代碼。這意味著,開發(fā)者編寫的Java代碼可以成為iOS應(yīng)用程序的一部分,且無(wú)需對(duì)生成的文件進(jìn)行編輯。 J2ObjC支持Java語(yǔ)言和運(yùn)行時(shí)的大部分特性,包括異常、內(nèi)部類/匿名類、泛型類型、線程和反射等,同時(shí)也支持轉(zhuǎn)換和執(zhí)行JUnit測(cè)試。 5.Livecode LiveCode原名Revolution,是一款源自HyperTalk的用于快速應(yīng)用程序開發(fā)語(yǔ)言。LiveCode語(yǔ)法結(jié)構(gòu)和自然語(yǔ)言接近,比較適合編程初學(xué)者掌握。此外LiveCode具有良好的跨平臺(tái)支持,可以創(chuàng)建Linux、OS X和Win桌面應(yīng)用,Android和iOS手機(jī)版的應(yīng)用,以及無(wú)GUI的服務(wù)器端應(yīng)用。 LiveCode 5.X及更早的運(yùn)行時(shí)環(huán)境僅有閉源版本,若想用其進(jìn)行開源軟件開發(fā)限制非常大。經(jīng)過(guò)今年年初的KickStarter募集后,成功推出改良核心的6.0版本,包含了支持拖拽布局的IDE和多平臺(tái)部署分發(fā)工具,可安裝于Linux、OS X和Win系統(tǒng)上。 6.Mono Mono是一個(gè)由Novell公司(先前是Ximian)主持的項(xiàng)目。該項(xiàng)目的目標(biāo)是創(chuàng)建一系列符合ECMA標(biāo)準(zhǔn)(Ecma-334和Ecma-335)的.NET工具,包括C#編譯器和共通用語(yǔ)言運(yùn)行庫(kù)。與微軟的.NET Framework不同,Mono項(xiàng)目不僅可以運(yùn)行于Windows系統(tǒng)上,還可以運(yùn)行于Linux,F(xiàn)reeBSD,Unix,OS X和Solaris。 10.Codename One Codename One是一個(gè)針對(duì)移動(dòng)應(yīng)用開發(fā)者的、開源的、跨平臺(tái)的Java工具,旨在幫助Java開發(fā)者通過(guò)單一代碼庫(kù)來(lái)針對(duì)所有移動(dòng)(智能手機(jī)和平板電腦)平臺(tái)構(gòu)建本地應(yīng)用。 Codename One由Chen Fishbein和Shai Almog開發(fā),這兩人都曾供職于Sun公司。Fishbein稱,Codename One使移動(dòng)應(yīng)用開發(fā)工作更加快速、容易,Java開發(fā)者可以構(gòu)建iPhone/iPad(iOS)、Android、Windows Phone、Blackberry等平臺(tái)上的應(yīng)用,且無(wú)需在應(yīng)用性能、功能或開發(fā)簡(jiǎn)易性方面妥協(xié)。 |