人(rén)
已閱讀(dú)
已閱讀(dú)
手機(jī)APP應用(yòng)開(kāi)發λ ₹者應掌握的(de)10款主流原生(shēng)✘≠∑轉換編譯工(gōng)具
來(lái)源:lexintech.com 發布時(s€®♠≠hí)間(jiān):2017-08-13
編譯工(gōng)具對(duì)α→開(kāi)發者的(de)影(yǐng)響是(shì)±✔÷₩直觀的(de),開(kāi)發者使用(yò↑¥ ng)JavaScript等語言寫出應用(yòng)的(de←™)代碼,再将它們編譯成原生(shēng) ₹♣☆代碼。通(tōng)過原生(shēng)φφ☆∑的(de)API,完成跨平台的(de)操作(zuò),最終分(fē∑ ≤ n)發到(dào)本地(dì)的(de)app應用(yòng)商店(diàn)中。由此可(kě)見(jiàn),編譯工(gōng)具↕>σ的(de)選擇可(kě)以直接降低(dī)開(kāi)發成本,整個(gλ$è)團隊可(kě)以間(jiān)接地(dì)快(kuài)<€¥♣速捕捉市(shì)場(chǎng)、提高(gāo)收益。今天我們為$↔×✘(wèi)大(dà)家(jiā)介紹了(le)10款主流的(de↑≠)原生(shēng)轉換編譯工(gōng)'§β具,APP開(kāi)發者們可(kě)以根據不(bù)同的(de)特點來(l ¶∑ái)選取,提高(gāo)自(zì)己編程的( ≠€de)效率。
1.Adobe Air

Adobe Air是(shì)針對(duì) ∑網絡與桌面應用(yòng)的(de)結合所開(kāi)發出¶÷"∑來(lái)的(de)技(jì)術(shù),可(k♠β¶λě)以不(bù)必經由浏覽器(qì)而對(duì)網絡上(sh←<₽÷àng)的(de)雲端程式做(zuò)控制(zhì),是(shì)一(y≠φ↑¶ī)款允許你(nǐ)利用(yòng)現(xiàn)有(yǒu)的(d∏↕e)web開(kāi)發技(jì)能(néng)(包括F★≤lash, Flex, HTML, JavaScript, Ajaxε•'¶)優勢,建立和(hé)配置跨平台(或跨操作(zuò)系統)的(×↓de)桌面RIA應用(yòng)。
其特點如(rú)下(xià):
網絡應用(y$≤₽òng)離(lí)線化(huà):同傳統的(de)Web©↑€相(xiàng)比,AIR的(de)優勢在于有(yǒu)客戶端的(de)優勢,±♦<"可(kě)以脫機(jī)運行(xíng)程序,在需要(yà φo)的(de)時(shí)候偶爾連接一(yīφ€$ )下(xià)網絡,比如(rú)可(kě)以離(lí)線寫•®博客,發布的(de)時(shí)候連接一(yī)下(xià)網絡。
跨平台、低(dī≤↑)開(kāi)發成本:跟傳統的(de)桌面應用(yònλ≤'↑g)程序相(xiàng)比,AIR程序可(•€βkě)以跨平台,支持多(duō)操作(zuò)系統,開(kāi)₹¶發成本較低(dī)。
出色的(de→☆)交互表現(xiàn):AIR憑借Flash技(jì)術(shù)本身( ©¶shēn)的(de)特征可(kě)以帶來(lái)更吸引人(rén)的(de)× 交互表現(xiàn),相(xiàng)比其他÷₹(tā)傳統的(de)Web技(jì)術(shù)要(yào)出色δγ 。
運行(xín↔&←g)速度更快(kuài):因為(wèi)AIR程序均是(shì)↓<在本地(dì)運行(xíng),而網絡應用(★∞←φyòng)程序在網絡客戶端和(hé)服務器(qì)之間(jiān)進行(x↕¥®∏íng)調用(yòng),需要(yào)調用(yòng)大(dà>γ)量數(shù)據和(hé)代碼,所以AIR程序的(de)φα運行(xíng)速度要(yào)快(kuài)一(yī)些(x$"iē)。
2.FireMonkey

Firemonk≥α₩ey是(shì)一(yī)個(gè)基于CPU/GPU混¥↕合架構的(de)業(yè)務應用(yòng)平台,能(néng)夠∞πΩ"幫助開(kāi)發人(rén)員(yuán)設計(jì→≠)出Windows、Mac和(hé)iOS設備™≈上(shàng)的(de)視(shì)覺絢麗(lì)的(±Ω≠φde)本地(dì)應用(yòng)程序。 F₩'≥ iremonkey允許開(kāi)發人(rén)員(yuán)創建具有(•¶™yǒu)快(kuài)速的(de)本地(dì)性能(néng)、動畫ε(huà)和(hé)圖像效果、企業(yè)級的(dγ ♠♥e)數(shù)據連接以及交互式數(shù)據可(kě)視(shì)化 ☆(huà)的(de)富HD和(hé)3D的(de)圖形×應用(yòng)程序。
3.Gideros Mobile

使用(yònβ$g)類似Flash的(de)功能(néng)來(lái)開(kāi)發遊戲↕×$或者應用(yòng),雖然不(bù)如( ¥ ™rú)上(shàng)面的(de)一(y↓≥Ω¥ī)些(xiē)工(gōng)具簡單,但(dàn)你(n✘←ǐ)也(yě)無須懂(dǒng)特别高(gāo)深的(de)編程語言,還®β¶✔(hái)能(néng)對(duì)已有(yǒu)的(de)代碼循環利用 (yòng),開(kāi)發好(hǎo)之後₽¥,可(kě)以在電(diàn)腦(nǎo)或者其它設備¥>上(shàng)立即進行(xíng)測試,無需反β&複導代碼。
4.J2objc

J2ObjC(Java ↔<φ to Objective-C)是(shì)Google出品的(deδ∏)一(yī)個(gè)開(kāi)源的(de)命令行(xíng)工(§'gōng)具,允許開(kāi)發者将Java代碼轉換成适用(yòng)于iOS&♦平台的(de)Objective-C代碼。這(zhè)意味著(zhe),開$¶(kāi)發者編寫的(de)Java代碼可(kě)以成為(wè£✘←✘i)iOS應用(yòng)程序的(de)一(yī)部分(fēn),且無需☆$Ω對(duì)生(shēng)成的(de)文(wén)件(ji&≤àn)進行(xíng)編輯。
J2ObjC支持Java語言和(hé)→α運行(xíng)時(shí)的(de)大(dà)部分(fēn)特© γ✔性,包括異常、內(nèi)部類/匿名類、泛型類型、線程和(hé)反射等,∞<同時(shí)也(yě)支持轉換和(hé)執行(x₩ íng)JUnit測試。
5.Livecode

LiveCode 原名 Revoluti₩Ωon,是(shì)一(yī)款源自(zì) HyperTalk™≠✘≤ 的(de)用(yòng)于快(kuài)速應用(yòng)程∞✔序開(kāi)發語言。LiveCode 語法結構和(hλ₹§é)自(zì)然語言接近(jìn),比較适合編程初學者掌握。此外(wài) δδLiveCode 具有(yǒu)良好(hǎo)的(de)跨平台支持,可(¥φkě)以創建 Linux、OS X 和(hé) Win 桌面應用(yò♥®ng), Android 和(hé) iOS 手機(jī)版的(de)應用(φ"yòng),以及無 GUI 的(de)服務器(q ↓♦ì)端應用(yòng)。
LiveCode 5÷.X 及更早的(de)運行(xíng)時(shí)環境僅有(yǒφφ¥u)閉源版本,若想用(yòng)其進行(xíng)開(kāi)源軟件(ji←★↑àn)開(kāi)發限制(zhì)非常大(dà)。經過今 ★€年(nián)年(nián)初的(de) Kic↓☆αkStarter 募集後,成功推出改良核心的(de) 6.0 版本,包含φ∞了(le)支持拖拽布局的(de) IDE 和(hé)多(duō)平台•✔部署分(fēn)發工(gōng)具,可(kě)安裝于 Li£γγ$nux、OS X 和(hé) Win 系統上(shàng)。
6.Mono

Mono是(shì)一(yī)個(gè)¶∏由Novell公司(先前是(shì)Ximiaש₽n)主持的(de)項目。該項目的(de)↑σ¥目标是(shì)創建一(yī)系列符合ECMA标準(Ecma-334 和(hβ♦λ™é) Ecma-335)的(de).NET工(gōng)具,γ±包括C#編譯器(qì)和(hé)共通(tōng)用(yòng)語言運行(xí®÷ng)庫。與微(wēi)軟的(de).NET Framewor✘§k不(bù)同,Mono項目不(bù)僅可(kě)以運行≠↔(xíng)于Windows系統上(shàng),還(hái¶")可(kě)以運行(xíng)于Linux,FreeBSD,Unix,'©∞₩OS X 和(hé) Solaris。
7.J2ME Polish

J2ME Po↕≈β↔lish是(shì)用(yòng)于開(kā♥≈i)發J2ME應用(yòng)的(de)™≠工(gōng)具集: 從(cóng)一(yī)份源代碼±>中為(wèi)多(duō)種設備和(hé)多(↑φduō)種語言創建應用(yòng)的(de)建造工(gōn★£σg)具(build tools)。一(yī)個(gè)設備數↑♦§≠(shù)據庫,您的(de)應用(yòng)可(kě)以α×用(yòng)它通(tōng)過預處理(lǐ)為(wèi)不(bù)同的(de✔∑✔)手機(jī)進行(xíng)調整。 一(yī)套用(yòng↔♣→¶)戶界面(GUI),,可(kě)以在應用(yò∑''ng)程序代碼之外(wài)進行(xíng)設計¥(jì)。 工(gōng)具類(Utiliy classes)φ∏∏,如(rú)BitMapFont 和(hé)Arra✘↔αyList。 編輯修改二進制(zhì)文(wén)件(jiε×'àn)的(de)獨立工(gōng)具。
8.Qt

Qt是(shì)C £≈SDN的(de)讀(dú)者比較熟悉的(de)開'₽ (kāi)發工(gōng)具,它是(shì)一(yī)個(gè)跨平©₩←台的(de)C++圖形用(yòng)戶界♣>φ面應用(yòng)程序框架。它提供給應用(yòng)程序開(kāi)發者建立藝§÷術(shù)級的(de)圖形用(yòng)戶界面所需的(≠λ$÷de)所用(yòng)功能(néng)。Qt是(shì)完全面向對(dγ€☆uì)象的(de),很(hěn)容易擴展,并且允許真正地(dì)'©組件(jiàn)編程。
使用(yòng)Qtδ ↔的(de)公司包括三維建模(Autodes λ÷k Maya)、Adobe Photoshop Elementλ ¶'s(Adobe圖像處理(lǐ))、Skype、 VLC 播放(fàng)器$♠(qì)。歐洲太空(kōng)總署、谷歌(gē)、γ♣HP、盧卡斯影(yǐng)業(yè)和(hé"↔₽)Opera移動浏覽器(qì)也(yě)都(dōu)有(yǒu)使用(✔♠yòng)Qt技(jì)術(shù)。
9.Sencha
Sencha 是(shì)由 ExtJS、j≥≤QTouch 以及 Raphael 三個≈♣(gè)項目合并而成的(de)一(yī)個∞€♦λ(gè)新項目。Sencha Touch 是(§δλshì)全球領先的(de)應用(yòng)程♦π序開(kāi)發框架,其設計(jì)旨在充分(fēn)利用(yòng)HβTML5、CSS3 和(hé)Javascript 來(lái)實現(xià≤₩↔↓n)最高(gāo)級别的(de)功能(néng)、靈☆δ∏活性和(hé)優化(huà)。Sencha Touch 是(shì)←₽♦★針對(duì)下(xià)一(yī)代具有(yǒu)觸摸屏設備的(de)跨 'ε平台框架。其特點如(rú)下(xià):
基于最新的®±✘(de)WEB标準:HTML5,CSS3,Jav≈γ×∑aScript。整個(gè)庫在壓縮和(hé)£✔↔gzip後大(dà)約80KB,通(tōng)過禁用(yòng)一 ε∑(yī)些(xiē)組件(jiàn)還(≤★hái)會(huì)使它更小(xiǎo)♣∏>↑。
支持世界上(shàng)最好(hǎo)的(de)₩'≥★設備。Beta版兼容Android和(hé)iOS,Andr>©♦€oid上(shàng)的(de)開(kā₽≥i)發人(rén)員(yuán)還(hái)可(kě)以使用(yòng)一(y∞β∞αī)些(xiē)專為(wèi)Andro←←≤✘id定制(zhì)的(de)主題。
增強的(de)觸摸事(shì)件(jiàn)。在touchstar↕σ±✘t、touchend等标準事(shì)件(jiàn)基礎上(shπ§δφàng),增加了(le)一(yī)組自(zì)定義事(shì÷<↔≠)件(jiàn)數(shù)據集成,如(rú)tap、swipe、£♥σpinch、rotate等。
數(shù)據集成。提供了(le)強大(dà)←✘₽的(de)數(shù)據包,通(tōng)過Ajax、JS₹↑₩ONp、YQL等方式綁定到(dào)組件(ji≤←àn)模闆,寫入本地(dì)離(lí)線存儲。
10.Codename One
Codename One是(shì)一(<♥∞♣yī)個(gè)針對(duì)移動應用(yòng)開(kāi)發者的(de)φ、開(kāi)源的(de)、跨平台的(de)Java工(gōng)具,旨在幫助© ★φJava開(kāi)發者通(tōng)過單一(yī∑$ £)代碼庫來(lái)針對(duì)所有(yǒu±)移動(智能(néng)手機(jī)和(hé)平闆電(diàn)腦(✘€nǎo))平台構建本地(dì)應用(yòng)。
Codename One由Chen Fiα<shbein和(hé)Shai Almog開(kāi)發,這(€×∞zhè)兩人(rén)都(dōu)曾供職于Sun公司。Fishbein稱€×≤,Codename One使移動應用(yò→εng)開(kāi)發工(gōng)作(zu♥✔ò)更加快(kuài)速、容易,Java開(kāi)發者↕☆≥可(kě)以構建iPhone/iPad (iOS)λ 、Android、Windows Phone、Blackbe¶&★rry等平台上(shàng)的(de)應用(yòng),且↔₽®無需在應用(yòng)性能(néng)、功能(néng)或開(kāi)πΩ↓發簡易性方面妥協。
- 上(shàng)一(yī)篇:作(zuò)為(wèi)一(yī)個(gè)開(kāi)發者必須™π了(le)解APP開(kāi)發的(de)詳細流程
- 下(xià)一(yī)篇:APP開(kāi)發,你(nǐ)需要(yào)學會(huì)的(de)€↑幾個(gè)産品構思方法!
- > 開(kāi)發網站(zhàn)或APP是(shì)用(yòng)≈₹←✔JAVA好(hǎo)還(hái)是(shì)↑φPHP好(hǎo)?
- > 找外(wài)包公司開(kāi)發APP © 有(yǒu)哪些(xiē)注意事(shì)項?
- > 想創業(yè),别再盲目開(kāi)發AP ∑P了(le)!
- > 開(kāi)發一(yī)個(gè)APP多(duō)♦δε&少(shǎo)錢(qián)?
- > 開(kāi)發一(yī)個(gè)APP多σ↑(duō)少(shǎo)錢(qián)?
- > 跟外(wài)包公司合作(zuò)怎麽樣才能(néng)做(zuò)好(hǎo↕↑≈£)一(yī)款APP?