從技術(shù)上講,iOS、Android和Windows Phone上的移動(dòng)app使用了不同的編程語言進(jìn)行編碼。iOS app使用Objective-C,Android app使用Java,而Windows Phone app使用.NET。但是,掌握一定量的JavaScript、CSS和HTML知識(shí),你就可以構(gòu)建超棒的移動(dòng)app。因此,在本博客中,我們將討論用于開發(fā)移動(dòng)app的頂級(jí)JavaScript框架。
對(duì)于Web開發(fā)而言,JavaScript是一個(gè)有前途的編程語言,并且在不久的將來它將依然在這個(gè)領(lǐng)域大放光彩。JavaScript在移動(dòng)app開發(fā)上也有同樣的影響嗎?讓我們一起來看看ValueCoders研究發(fā)現(xiàn)的針對(duì)移動(dòng)app開發(fā)的前9個(gè)JavaScript框架。
1)PhoneGap / Cordova
PhoneGap(Apache Cordova的發(fā)行版)是一個(gè)軟件開發(fā)框架,可幫助重用你現(xiàn)有的Web開發(fā)技能,從而快速構(gòu)建使用HTML,CSS和JavaScript的混合移動(dòng)應(yīng)用程序。因此,確切的說這并非是JavaScript框架。但是,在開始之前,了解PhoneGap很重要。
PhoneGap是Web應(yīng)用程序代碼和移動(dòng)操作系統(tǒng)API之間的媒介。此圖將幫助你更好地理解:
在PhoneGap的幫助下,你可以使用用JavaScript,HTML和CSS編寫的相同代碼,并為Android和iOS等移動(dòng)操作系統(tǒng)生成API。
除了PhoneGap,還有一些框架可以幫助將JavaScript文件轉(zhuǎn)換為移動(dòng)API。Xamarin,Ionic,Corona就是這樣的框架。
2)Titanium
Appcelerator的Titanium是一個(gè)開源的應(yīng)用程序開發(fā)平臺(tái),允許你使用Web技術(shù),如HTML,JavaScript和CSS創(chuàng)建原生app(移動(dòng)的和桌面的)。Titanium Mobile SDK是當(dāng)今最流行的跨平臺(tái)移動(dòng)開發(fā)解決方案之一,擁有超過916109名移動(dòng)開發(fā)人員和使用Accelerator支持app的460,587,474個(gè)設(shè)備。
下面是Titanium的工作原理:
3)jQuery Mobile
jQuery Mobile框架將“write less, do more”的理念提升到一個(gè)新的水平。它是用于移動(dòng)的構(gòu)建應(yīng)用程序或移動(dòng)友好網(wǎng)站的頂級(jí)JavaScript框架之一。
jQuery Mobile支持許多與現(xiàn)代平臺(tái)如Android,iOS乃至最早的平臺(tái),如Opera Mini和Nokia Symbian兼容的用戶界面。在PhoneGap的幫助下,你可以將jQuery Web app代碼集成到交互式iOS或Android應(yīng)用程序。
4)Sencha Touch
Sencha Touch(類似于Ext JS)被認(rèn)為是為開發(fā)人員創(chuàng)建快速和令人印象深刻的移動(dòng)應(yīng)用程序提供最佳解決方案的唯一框架,且這些應(yīng)用程序可在Android,iOS,Kindle Fire等平臺(tái)上運(yùn)行。它帶有大量創(chuàng)造性和有用的組件,可高效地工作于所有類型的移動(dòng)應(yīng)用程序。下面就粗略地看一看功能。
這里是上述四個(gè)框架的特征比較
5)React Native
如果你喜歡Native移動(dòng)應(yīng)用程序,那么主要有兩個(gè)選項(xiàng)——Xamarin和React Native。Xamarin允許你只編寫相同類型的代碼,而本地編程包括類似的界面設(shè)計(jì)工具和類似的調(diào)用。
另一方面,React Native(來自Facebook)對(duì)本地app采用完全不用的開發(fā)路徑。它使用JavaScript代碼,類似CSS的樣式表和所有太熟悉的類似HTML的標(biāo)簽來布局。這里有一個(gè)圖表可以清楚地了解React Native的受歡迎程度:
如果你的團(tuán)隊(duì)已經(jīng)React友好,那么React Native可能是一個(gè)不錯(cuò)的選擇。