手機 App 的技術(shù)??梢苑殖扇?lèi)。
原生技術(shù)棧指的是,只能用于特定手機平臺的開(kāi)發(fā)技術(shù)。比如,安卓平臺的 Java 技術(shù)棧,iOS 平臺的 Object-C 技術(shù)?;?Swift 技術(shù)棧。
這種技術(shù)棧只能用在一個(gè)平臺,不能跨平臺。
混合技術(shù)棧指的是開(kāi)發(fā)混合 App 的技術(shù),也就是把 Web 網(wǎng)頁(yè)放到特定的容器中,然后再打包成各個(gè)平臺的原生 App。所以,混合技術(shù)棧其實(shí)是 Web 技術(shù)棧 + 容器技術(shù)棧,典型代表是 PhoneGap、Cordova、Ionic 等框架。
如果已經(jīng)掌握了 Web 技術(shù),這個(gè)技術(shù)棧就主要學(xué)習容器提供的 API Bridge,網(wǎng)頁(yè)通過(guò)它們去調用底層硬件的 API。
跨平臺技術(shù)棧指的是使用一種技術(shù),同時(shí)支持多個(gè)手機平臺。它與混合技術(shù)棧的區別是,不使用 Web 技術(shù),即它的頁(yè)面不是 HTML5 頁(yè)面,而是使用自己的語(yǔ)法寫(xiě)的 UI 層,然后編譯成各平臺的原生 App。
這個(gè)技術(shù)棧就是純粹的容器技術(shù)棧,React Native、Xamarin、Flutter 都屬于這一類(lèi)。學(xué)習時(shí),除了學(xué)習容器的 API Bridge,還要學(xué)習容器提供的 UI 層,即怎么寫(xiě)頁(yè)面。
H5 開(kāi)發(fā)主要用在混合技術(shù)棧。但是,跨平臺技術(shù)棧的某些容器也會(huì )用到(比如 React Native),因為它們的 UI 層借鑒了 Web 模型。
另外,混合技術(shù)棧和跨平臺技術(shù)棧的基礎,都是原生技術(shù)棧,因為最終都要編譯成原生App。所以,不管使用哪一種技術(shù)棧,多多少少要了解一些各平臺的原生技術(shù)。
聯(lián)系客服