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