flutter調(diào)用原生sdk 目前編寫一款簡單的手機應(yīng)用APP一般用什么編程語言?
目前編寫一款簡單的手機應(yīng)用APP一般用什么編程語言?用什么語言編寫移動應(yīng)用程序?從簡單到復(fù)雜,它可以分為三個層次:事實上,它是將網(wǎng)頁封裝成應(yīng)用程序。有很多工具和框架,比如Cordova、uni等等。以
目前編寫一款簡單的手機應(yīng)用APP一般用什么編程語言?
用什么語言編寫移動應(yīng)用程序?
從簡單到復(fù)雜,它可以分為三個層次:事實上,它是將網(wǎng)頁封裝成應(yīng)用程序。有很多工具和框架,比如Cordova、uni等等。
以這種方式實現(xiàn)“應(yīng)用程序”是最簡單的方法,而且是跨平臺的。只需為IOS和Android做一個設(shè)置。價格是功能弱,性能低,換句話說就是“卡”。
這種解決方案在IOS和Android上實現(xiàn)了本機框架。通用flutter和react native是流行的native跨平臺框架。Cocos2d和coronasdk的游戲也可以包括在這個級別。
由于IOS和Android可以在跨平臺、一次性開發(fā)中運行,因此這種解決方案在應(yīng)用程序?qū)崿F(xiàn)上有一定難度。功能和性能也是中等的,不如原生應(yīng)用,但比HTML5好得多。
直接在IOS和Android上開發(fā)本機應(yīng)用程序。
IOS可以使用objective C或swift。
Android可以使用Java或kotlin。
讓我們看一張圖表。雖然很簡單,但很明顯:
現(xiàn)在國內(nèi)使用Flutter來開發(fā)的多嗎?
像仙游這樣的國內(nèi)開發(fā)團隊在顫振領(lǐng)域做了大量的研究,阿里等公司也越來越重視這個框架。
Flitter在中國的普及率仍然相對較低,而像recent native這樣的工具似乎被更多的人使用。主要原因是國內(nèi)大部分開發(fā)人員都從事過網(wǎng)站開發(fā),所以對HTML和JS比較熟悉。
因為flatter使用的是dart語言,學(xué)習(xí)的成本很高,而且dart的UI設(shè)計是純代碼的,嵌套很多,這讓初學(xué)者很頭疼。然而,只要你習(xí)慣了任何一種語言,就不難使用它。開始每件事往往是困難的。
既然谷歌已經(jīng)選擇了dart,那里面一定有什么東西。簡單地比較或者討論,比如動態(tài)或者靜態(tài),是否支持反射是沒有意義的。白菜蘿卜各有所愛。支持任何語言都是合理的。關(guān)鍵取決于他的精通程度。
谷歌可能擔(dān)心Java的版權(quán)問題,因此強烈建議使用Android本機語言kotlin。但效果很差。我覺得沒有人會選擇kotlin,除非Java被禁止。這和人們習(xí)慣使用JS而不喜歡dart的原因是一樣的。但有趣的是,dart可以生成JS代碼。這應(yīng)該是更多人選擇使用它的原因之一。
由于谷歌強烈推薦flatter,這實際上與它的新系統(tǒng)功能有關(guān),許多人懷疑Android可能會被谷歌拋棄。坦率地說,我希望如此。Android的性能是一個弱點。雖然比以前光滑了,但也不是天生的好。谷歌正在基于其新的鋯石內(nèi)核構(gòu)建一個新的系統(tǒng),這個系統(tǒng)類似于鴻蒙的想法,可以支持多種平臺。
Flitter不僅受到谷歌的重視,也受到國內(nèi)巨頭的重視。據(jù)估計,像華為這樣的公司對此特別關(guān)注,因為他們是第一個參加funchsia測試的中國公司。由于Google是基于性能需求開發(fā)的flatter,在Android上,flatter組件與native是同一個渲染引擎,因此性能非常接近native,這也是其他框架的優(yōu)勢。
很多年前,我們都希望H5能統(tǒng)一世界,但我覺得未來可能需要dart來統(tǒng)一。這種后發(fā)優(yōu)勢可能是谷歌創(chuàng)新的原因。在不影響性能的前提下,快速發(fā)展將是未來的發(fā)展趨勢。
Android App開發(fā)現(xiàn)在學(xué)Kotlin好還是Flutter好?
巧合的是,他們都和谷歌有關(guān),這很有趣。
Kotlin是一種運行在Java虛擬機上的靜態(tài)編程語言,被稱為Android世界的swift。2017年,谷歌宣布kotlin作為Android的官方開發(fā)語言。這樣,kotlin就成為了Android開發(fā)的主流語言。當(dāng)然,作為一種運行在Java虛擬機上的語言,kotlin也可以像Java一樣用作后臺開發(fā)語言。與Java相比,kotlin是一種語法簡潔、開發(fā)效率高的現(xiàn)代語言,也是一種強類型語言。
讓我們來談?wù)勵澱瘛Mǔ碚f,flutter不是一種語言,而是由Google推出的開源移動UI框架。其開發(fā)語言為dart,其核心優(yōu)勢是:單端開發(fā),多終端操作,程序性能接近本地應(yīng)用體驗。那就是開發(fā)一套可以在IOS和Android上運行的代碼??梢韵胂?,一個程序員,開發(fā)一個程序可以在多個終端上運行,也就是說,一個人同時做幾個人的工作!當(dāng)然,好處不言而喻。
如果本課題的開發(fā)工作主要集中在開發(fā)Android上,我個人建議首先使用政府推薦的kotlint,因為只使用Android的官方語言是絕對有利的。你為什么這么說?如果大公司開發(fā)應(yīng)用程序,他們更喜歡程序的穩(wěn)定性、可靠性和效率,并且程序本身不會局限于需求的規(guī)劃。因此,為了節(jié)約預(yù)算,大公司不會考慮節(jié)約成本的方式,而采用的框架不夠成熟,周邊生態(tài)不夠完善。
然而,并不是顫振不能做到這一點。它的優(yōu)勢在小公司是顯而易見的,因為一個人可以同時開發(fā)多個終端應(yīng)用程序,這對于小公司的老板來說是非常理想的。首先,我們可以少招人,節(jié)省成本,把產(chǎn)品更快推向市場。
最后,這取決于主題的選擇。我建議kotlin作為日常生活中的主要開發(fā)語言,可以花時間玩flutter,必要時可以自由切換。