目前iOS應(yīng)用APP是基于object-C的,所以要會(huì)OC這個(gè)語言,開發(fā)android用java,開發(fā)web 應(yīng)用程序用java,c#,php等。不再是之前那種Java與Objective-C平分天下的勢態(tài)了。除了java與Objective-C依舊占領(lǐng)著APP開發(fā)語言的大多數(shù)比例,.NET也進(jìn)來分了一杯羹。那他們互相之間有哪些優(yōu)劣點(diǎn)了?
我們會(huì)把java與Objective-C歸為一組,把.NET歸為一組。
依舊牢牢占據(jù)著APP開發(fā)語言的大部分市場,穩(wěn)定安全,非常適應(yīng)各自的平臺(tái),并漸漸成為了很多客戶的認(rèn)知。是大多數(shù)客戶的第一選擇。當(dāng)然,缺點(diǎn)也很明顯,就是需要分開開發(fā),工作量相對(duì)于.NET要大了近一倍。對(duì)APP開發(fā)公司來說,成本相對(duì)要高很多。
優(yōu)點(diǎn)很明顯,就是能適應(yīng)兩個(gè)平臺(tái),工作量相對(duì)于java與Objective-C要少很多。對(duì)于大多數(shù)APP開發(fā)公司來說,少了這么多工作量絕對(duì)是一個(gè)非常誘惑的蛋糕,同時(shí)也讓APP開發(fā)公司可以報(bào)更低的競爭報(bào)價(jià)。所以很容易被APP開發(fā)公司所青睞。缺點(diǎn)也很明顯,性能表現(xiàn)和適應(yīng)度方面沒有特別突出的的表現(xiàn),更因?yàn)閖ava與Objective-C在APP開發(fā)語言中的長期壟斷地位,想擊敗java與Objective-C絕對(duì)是一件任重而道遠(yuǎn)的事情。
除了這幾種APP開發(fā)方式,市場上還小范圍的流行一種“偽APP”。Android原生技術(shù)+H5混合技術(shù)開發(fā)的,因?yàn)樗茏龅礁偷某杀荆呀?jīng)有一定的市場了。其實(shí)說白了他就是封裝一下原有的手機(jī)站。使之緩存能夠保存下來,進(jìn)而達(dá)到一種類似與原生開發(fā)的APP所擁有的一部分特點(diǎn)。當(dāng)然,從性能上來說即使他能做到類似,卻依舊沒法做到像原生APP的那種流程感,體驗(yàn)度上多少會(huì)打一些折卡。
至于混合開發(fā),現(xiàn)在絕大數(shù)的app都是混合開發(fā)的,H5和native相結(jié)合,目前來說絕大數(shù)頁面在中高端手機(jī)上運(yùn)行時(shí)是很難分辨H5還是native的,當(dāng)然,手機(jī)的性能在發(fā)展,技術(shù)也在進(jìn)步,所謂的web體驗(yàn)沒有native好這個(gè)問題也在慢慢的淡化。