<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          手機(jī)上的APP都是用什么編程語言寫的?

          共 1683字,需瀏覽 4分鐘

           ·

          2021-12-14 01:10

          今天想和大家分享的內(nèi)容是和我們手機(jī)上APP相關(guān)的,它們都是用什么編程語言寫的呢?
          主要針對(duì)兩大移動(dòng)端:Android和IOS,我們就不多說了,下面我們從另一個(gè)角度進(jìn)行分類。

          01


          第一類:針對(duì)單一APP開發(fā)的語言,即開發(fā)一套代碼只能運(yùn)行在一個(gè)平臺(tái)上。

          1、開發(fā)Android的:Java和Kotlin

          Kotlin是一種在Java虛擬機(jī)上運(yùn)行的靜態(tài)類型編程語言,被稱之為Android世界的Swift。Kotlin可以編譯成Java字節(jié)碼,也可以編譯成JavaScript,方便在沒有 JVM 的設(shè)備上運(yùn)行。運(yùn)行效率提高很多,并且語法更加簡(jiǎn)潔好用。

          如果是與系統(tǒng)底層進(jìn)行交互則需要使用JNI技術(shù),通過和C或者C++結(jié)合實(shí)現(xiàn)相應(yīng)的業(yè)務(wù)邏輯,比如美顏或者直播類型的APP。直播類型的APP采用的ffmpeg技術(shù),其中ffmpeg就是用C語言實(shí)現(xiàn)的。


          2、開發(fā)IOS的:Swift和Object-C

          Swift 結(jié)合了 C 和 Objective-C 的優(yōu)點(diǎn)并且不受 C 兼容性的限制。


          02


          (二)第二類:可以針對(duì)多個(gè)APP端的編程語言,即只需開發(fā)出一套代碼,就可在多個(gè)平臺(tái)上運(yùn)行。


          1、第一種是Flutter技術(shù)

          基于Dart語言,比如現(xiàn)在閑魚APP就是基于flutter開發(fā)的。并且有著多年經(jīng)驗(yàn),而且閑魚免費(fèi)開源了框架。

          Flutter是谷歌的移動(dòng)UI框架,可以快速在iOS和Android上構(gòu)建高質(zhì)量的原生用戶界面。Flutter可以與現(xiàn)有的代碼一起工作。在全世界,F(xiàn)lutter正在被越來越多的開發(fā)者和組織使用,并且Flutter是完全免費(fèi)、開源的。

          Flutter的熱重載可幫助您快速地進(jìn)行測(cè)試、構(gòu)建UI、添加功能并更快地修復(fù)錯(cuò)誤。在iOS和Android模擬器或真機(jī)上可以在亞秒內(nèi)重載,并且不會(huì)丟失狀態(tài)。

          尤其是在UI上使用Flutter的現(xiàn)代、響應(yīng)式框架,和一系列基礎(chǔ)widget,輕松構(gòu)建您的用戶界面。使用功能強(qiáng)大且靈活的API(針對(duì)2D、動(dòng)畫、手勢(shì)、效果等)解決艱難的UI挑戰(zhàn)。


          2、第二種是Uni-app框架

          基于Vue.js。俗稱一套代碼編到8個(gè)平臺(tái)上。

          uni-app是一個(gè)使用Vue.js開發(fā)所有前端應(yīng)用的框架,開發(fā)者編寫一套代碼,可發(fā)布到iOS、Android、H5、以及各種小程序:微信/支付寶/百度/頭條/QQ/釘釘?shù)榷鄠€(gè)平臺(tái)。


          小結(jié):

          第二類開發(fā)起來更顯效率,節(jié)約很多時(shí)間成本。當(dāng)然,如果加上大型APP這個(gè)限定條件的話,就不能用單一的某一種編程語言來說了,一般情況下大型APP必然會(huì)用到的編程語言有三種:
          第一種:平臺(tái)原生推薦語言,如:Android平臺(tái)的Java和Kotlin,ios平臺(tái)的object-c和Swift(swift版本之間的差異比較大,要學(xué)習(xí)的話還是要注意版本選擇)。這部分一般用于處理核心業(yè)務(wù)、權(quán)限請(qǐng)求以及高性能要求頁面。
          第二種:web語言,這里主要指的是h5相關(guān)的技術(shù)棧。這部分主要處理非核心業(yè)務(wù)邏輯,以及需要?jiǎng)討B(tài)更新的頁面。
          第三種:NDK相關(guān),這里一般用到的就是C、C++。大部分寫業(yè)務(wù)邏輯的同學(xué)用的比較少,不過大型APP一般還是會(huì)用到一些。主要應(yīng)用于安全性要求高,高性能算法以及跨平臺(tái)算法實(shí)現(xiàn)。
          材源于:文章源,C語言與程序設(shè)計(jì);直接來源:嵌入式ARM
          版權(quán)歸原作者所有。僅供技術(shù)的播和學(xué)習(xí)討論,如涉及作品版權(quán)問題,請(qǐng)聯(lián)系我進(jìn)行刪除。

          最后

          ? ? ? 當(dāng)然還有Qt等等,覺得有所收獲,記得點(diǎn)個(gè)哦~

          ——?本文完 ——

          推薦閱讀:
          高頻前端面試問題及答案整理
          一文打盡前端知識(shí)體系(面試體系梳理)
          最近面試BAT,整理一份面試資料前端面試BAT通關(guān)手冊(cè),覆蓋了前端技術(shù)、CSS、JavaScript、框架、?數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。
          獲取方式:關(guān)注公眾號(hào)并回復(fù)?前端?領(lǐng)取,更多內(nèi)容陸續(xù)奉上。
          明天見(??ω??)??

          瀏覽 88
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  青青草精品在线视频 | 韩国三级片在线视频 | 婷婷丁香激情 | 午夜福利av电影 午夜福利电影AV 午夜精品福利在线 | 青青操美女视频 |