新聞中心
開始學(xué)習(xí)一種復(fù)雜的編程語(yǔ)言往往會(huì)讓人望而生畏,因?yàn)樵诖蠖鄶?shù)情況下,您會(huì)不知道從何處開始學(xué)習(xí),而且在開始之前,您可能已經(jīng)對(duì)該語(yǔ)言滿腹懷疑了。因此,事先了解不同類型的語(yǔ)言,會(huì)讓您清楚地知道在面對(duì)不同需求環(huán)境和不同類型的應(yīng)用時(shí),應(yīng)當(dāng)如何做出明智的選擇。

我們提供的服務(wù)有:做網(wǎng)站、網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、吳忠ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的吳忠網(wǎng)站制作公司
眾所周知,Java是Android的官方編程語(yǔ)言,但是其實(shí)我們完全可以用其他的語(yǔ)言,來(lái)構(gòu)建Android應(yīng)用。由于各種Android編程語(yǔ)言之間可能存在著復(fù)雜或細(xì)微的差別,因此我們?cè)谧鲞x擇之前,先來(lái)了解一下各自的優(yōu)缺點(diǎn)吧。
以下是目前常用的Android開發(fā)編程語(yǔ)言:
- Java - Java是Android開發(fā)的官方語(yǔ)言,Android Studio能夠支持它。然而,它學(xué)習(xí)曲線卻比較“陡峭”。
- Kotlin - Kotlin是最近被推出的、僅次于Java的Android開發(fā)語(yǔ)言。它雖然與Java類似,但是在很多方面具有清晰的“思路”。
- C/C++ - Android Studio通過(guò)使用Java NDK來(lái)支持C++。這允許產(chǎn)生本地原生編碼,這對(duì)于游戲之類的應(yīng)用來(lái)說(shuō)會(huì)更為方便。不過(guò)C++比較復(fù)雜。
- C# - 相對(duì)于C或C++容易混淆代碼來(lái)說(shuō),C#是一種新的替代方式。它能夠被Unity和Xamarin之類的工具所方便支持,因此更適合于游戲、以及跨平臺(tái)的開發(fā)。
- BASIC – 您可以通過(guò)Anywhere Software的B4S IDE來(lái)支持BASIC。此工具雖然簡(jiǎn)單且強(qiáng)大,但比較小眾。
- Corona/LUA – 是另一個(gè)基于LUA的跨平臺(tái)工具,它大幅簡(jiǎn)化了應(yīng)用構(gòu)建的過(guò)程,也允許您去調(diào)用本地原生庫(kù)。
- PhoneGap(HTML、CSS、JavaScript) - 如果您已經(jīng)知道了如何構(gòu)建交互式頁(yè)面的話,那么您可以將該知識(shí)運(yùn)用到PhoneGap上,來(lái)構(gòu)建更為基礎(chǔ)的跨平臺(tái)應(yīng)用。
開發(fā)Android應(yīng)用的最佳方式是直接下載Android Studio。這是一款具有IDE和集成開發(fā)環(huán)境的軟件。它提供帶有Android SDK包的一組工具,以滿足Android的開發(fā)。它能夠一站式地提供各種應(yīng)用啟動(dòng)和運(yùn)行所需的環(huán)境。
Google提供了其官方教程與文檔,您也可以在那里找到更多的庫(kù)和免費(fèi)的代碼,以增強(qiáng)您的應(yīng)用效果。視覺(jué)設(shè)計(jì)和各種提示之類的功能,能夠使得程序進(jìn)程更為流暢。同時(shí)就像其他云存儲(chǔ)空間那樣,一些更為先進(jìn)且強(qiáng)大功能還會(huì)被持續(xù)添加進(jìn)去。
1.Java
對(duì)于世界各地的移動(dòng)應(yīng)用開發(fā)人員來(lái)說(shuō),選擇的、也是最受歡迎的編程語(yǔ)言莫過(guò)于Java。它是Android應(yīng)用開發(fā)的官方語(yǔ)言,Google不但能完全支持它,而且Play Store中的大多數(shù)應(yīng)用也都是用它來(lái)構(gòu)建的。Java由Sun公司于1995年所開發(fā)。Android設(shè)備上的虛擬機(jī)能夠運(yùn)行并解釋其代碼。
不幸的是,Java對(duì)于初學(xué)者來(lái)說(shuō)有點(diǎn)復(fù)雜,這也是Android應(yīng)用開發(fā)人員所面臨的最大障礙。由于是一種面向?qū)ο蟮木幊陶Z(yǔ)言,因此它的構(gòu)造函數(shù)、空指針異常、檢查異常等會(huì)顯得不易閱讀。而且它經(jīng)常使用大量的代碼來(lái)表示一些簡(jiǎn)單的對(duì)象。
如果添加了Java SDK,初學(xué)者就更難分辨出哪些部分屬于Java、哪些屬于Android。如果使用Java進(jìn)行開發(fā),您還需要用到Gradle之類基于JVM的構(gòu)建工具,并需要理解Android Manifest、以及標(biāo)記語(yǔ)言XML。當(dāng)然,Java有著廣泛的交流社區(qū)。
所以,Java會(huì)是您學(xué)習(xí)編程的最好語(yǔ)言嗎?答案是肯定的,特別是如果您想擁有完整的Android開發(fā)體驗(yàn)的話。如果擔(dān)心面對(duì)復(fù)雜的代碼,您可以盡量使用設(shè)計(jì)界面、并參考各種幫助文檔。但是作為初學(xué)者,如果您期待盡快做出有價(jià)值的產(chǎn)品的話,我建議您選擇其他簡(jiǎn)單的語(yǔ)言,等積累了一定的經(jīng)驗(yàn)后,再回頭來(lái)接觸Java。
2.Kotlin
Kotlin是排在第二位的Android開發(fā)官方語(yǔ)言。有人猜測(cè)其逐漸升高的熱度,會(huì)成為下一個(gè)Swift。
和Java一樣,Kotlin也運(yùn)行在Java虛擬機(jī)之上。它與Java具有完全的互操作性,不會(huì)因?yàn)槲募笮〉脑黾樱斐烧系K。
與Java的不同之處在于:Kotlin較少地需要“boilerplate(前端模板)”代碼,這使得它更簡(jiǎn)化且易于閱讀。它消減了空指針異常之類的錯(cuò)誤,和句末的分號(hào)。
Kotlin對(duì)于初學(xué)者來(lái)說(shuō)雖然是一個(gè)更為簡(jiǎn)單的起點(diǎn),但是您目前需要下載Android Studio的測(cè)試版,才能獲得對(duì)其“開箱即用”的支持。這比起在Unity里使用C#還是略顯復(fù)雜。另外,其社區(qū)方面的支持也還處于相對(duì)初級(jí)的階段。
3.C/C++
Android Studio通過(guò)使用Android原生開發(fā)工具(Native Development)來(lái)支持C/C++。您不必編寫在Java虛擬機(jī)上運(yùn)行的代碼,而能夠?qū)⒋a在設(shè)備上本地原生地運(yùn)行,并且可以控制內(nèi)存之類的部件。對(duì)于一些3D要求高的游戲應(yīng)用,您可以使用C或C++編寫的庫(kù),來(lái)獲取Android設(shè)備上的特有性能。
當(dāng)然,它在設(shè)置上會(huì)比較復(fù)雜,可能會(huì)引入一些bug,同時(shí)也缺少一定的靈活度。如果您的確想為電腦開發(fā)一款游戲的話,那么您最好還是使用現(xiàn)成的游戲引擎為妙。
4.C#
C#是純粹面向?qū)ο蟮腃和C++版本。微軟保留了C++的強(qiáng)大功能和Visual BASIC的簡(jiǎn)約性,它有點(diǎn)類似于Java的簡(jiǎn)化版。
和Java相同,C#也具有垃圾回收功能,因此您不需要擔(dān)心內(nèi)存泄漏、或考慮自行釋放內(nèi)存等問(wèn)題。同時(shí)相對(duì)于Java來(lái)說(shuō),C#的語(yǔ)法更為清晰。當(dāng)然,我推薦您將C#和下面將要提到的Unity結(jié)合起來(lái)使用。
5.Unity
Unity是一款“游戲引擎”,它提供諸如物理計(jì)算、3D圖形渲染、以及類似Android Studio的IDE。它是一個(gè)開源的工具,您能很容易地創(chuàng)建出自己的游戲,并能獲得其強(qiáng)大社區(qū)的支持。只需幾行代碼,您就可以在一小時(shí)之內(nèi)搭建出一個(gè)基本的游戲平臺(tái)。作為Google Play Store里大多數(shù)游戲工作室所使用的工具,它是跨平臺(tái)的。由于一直使用的是對(duì)象,其開發(fā)模式還能提供學(xué)習(xí)面向?qū)ο缶幊痰膶?shí)戰(zhàn)方法。
Unity雖然對(duì)于開發(fā)游戲非常實(shí)用,但面對(duì)創(chuàng)建標(biāo)準(zhǔn)的Android應(yīng)用,特別是要符合Google材料設(shè)計(jì)語(yǔ)言(Material Design)的要求,則支持欠佳。
如果您想成為一名專業(yè)的Android開發(fā)人員,那么這條“非標(biāo)準(zhǔn)”的路線將會(huì)限制您的就業(yè)發(fā)展,除非您的目標(biāo)只是想成為一名游戲開發(fā)者。
C#也可以用在Visual Studio的Xamarin之中。與傳統(tǒng)的Android開發(fā)相比,它不但具有跨平臺(tái)的優(yōu)勢(shì),還具有適用于Android和iOS的代碼庫(kù)。
對(duì)于入門級(jí)的初學(xué)者來(lái)說(shuō),這條路并不一定適合,但對(duì)于一個(gè)想同時(shí)為iOS和Android平臺(tái)創(chuàng)建應(yīng)用的小公司來(lái)說(shuō),此路完全值得嘗試。
6.BASIC
BASIC(Beginners All-Purpose Symbolic Instruction Code,初學(xué)者通用符號(hào)指令代碼)是初學(xué)者理想的切入點(diǎn)。
可惜,它并不被Android Studio官方所支持,您不能在Unity或Xamarin中使用它。不過(guò)好消息是:您可以用到一個(gè)鮮為人知的工具--Anywhere Software的B4A(BASIC 4 Android),來(lái)運(yùn)用BASIC開發(fā)Android應(yīng)用。正如您所期望的那樣,它可讓您使用BASIC來(lái)編寫Android應(yīng)用程序。
B4A是為RAD(Rapid Application Development,快速應(yīng)用開發(fā))環(huán)境所設(shè)計(jì)的。它有著非常強(qiáng)大的支持社區(qū)。
由于“非官方”語(yǔ)言的因素,您用它制作出的高端游戲可能會(huì)不太理想,而且也很難完全符合材料設(shè)計(jì)語(yǔ)言的規(guī)范。這同時(shí)也會(huì)限制您的專業(yè)發(fā)展道路。另外,BASIC還有一個(gè)重大的缺點(diǎn):它并不免費(fèi)。
7.Corona
Corona作為開發(fā)Android應(yīng)用的另一個(gè)選項(xiàng),同樣為您提供了相當(dāng)強(qiáng)大的控制功能。比Java簡(jiǎn)單的是:您可以在LUA中進(jìn)行編碼,而且Corona SDK能夠支持所有的本地原生庫(kù),并允許您將應(yīng)用發(fā)布到多個(gè)平臺(tái)之上。
除了被廣泛地運(yùn)用到創(chuàng)建游戲,您還可以在其他方面使用它。您可以使用Notepad++之類的文本編輯器來(lái)輸入代碼,并在模擬器上運(yùn)行,而無(wú)需提前進(jìn)行編譯。在準(zhǔn)備創(chuàng)建APK并予以部署時(shí),您完全可以使用在線的工具來(lái)完成此操作。
由于確實(shí)需要一定的編程基本技巧,它提供了全面的使用介紹。不過(guò),它也有自己的局限性:對(duì)于想要?jiǎng)?chuàng)建簡(jiǎn)單應(yīng)用、又不想提高自己的編碼技能與專業(yè)度的人來(lái)說(shuō),它是夠用的;而如果您想用到“應(yīng)用內(nèi)購(gòu)買”和原生Android API等功能的話,您就需要支付額外費(fèi)用了。
8.PhoneGap
除非您想使用應(yīng)用程序生成器,不然PhoneGap將是您“簡(jiǎn)化” Android應(yīng)用開發(fā)的最后選項(xiàng)。
由Apache Cordova帶來(lái)的PhoneGap,允許您使用HTML、CSS和JavaScript這些常用于創(chuàng)建網(wǎng)站的編程語(yǔ)言。PhoneGap就像橋梁一樣,允許開發(fā)者訪問(wèn)手機(jī)或平板電腦上的一些原生功能,如計(jì)算器或相機(jī)等。
PhoneGap實(shí)際上不是真正的“Android”開發(fā),而只是用到了JavaScript進(jìn)行編程。因此它所完成的只是一些基本的任務(wù),而如果您想成為真正的Android應(yīng)用開發(fā)者的話,還是請(qǐng)從前面的列表中選擇語(yǔ)言吧。
當(dāng)前文章:支持安卓應(yīng)用開發(fā)的那些頂級(jí)編程語(yǔ)言
標(biāo)題鏈接:http://m.5511xx.com/article/cdppsig.html


咨詢
建站咨詢
