首頁>Club>
Android Studio已經同時支援Kotlin和Flutter了。
146
回覆列表
  • 1 # 宇文成風

    好好學flutter,未來你會很有用,Andriod也需要了解不必太深,谷歌會吧安卓淘汰掉,以後安卓工程師也是慢慢的很難找工作。放心大膽的學flutter.

  • 2 # 比逗的冷高

    kotlin是程式語言

    fluttet是ui框架,採用dart語言

    kotlin作為語言,應用很廣,目前也在往跨平臺不斷探索,但相對於Flutter更不成熟!

    但kotlin作為安卓第一開發語言,是建議學習的,Flutter雖然底層採用Android同款skia渲染引擎,但效能方面和Android依然有不小的差距!

    如果只是需要快速開發一款app並且要求跨平臺,Flutter當然是最好的選擇,如果只是限於Android app開發並且未來也沒有跨平臺的打算,學習kotlin不會讓你失望!

    最後再提一句,小孩子才做選擇題,成年人當然全都要

  • 3 # 鮮事

    如果想要進行單純的Android 平臺App開發,建議先學習Kotlin(Kotlin是Google Android開發的官方語言);後面如果考慮構建跨平臺應用,可以使用Flutter。

    Kotlin和Flutter系出同門

    移動應用開發領域,Kotlin和Flutter是當下兩個熱門的技術。他們在移動開發領域都有著廣泛的使用場景,更神奇的是他們都是Google的產品,都受到Google的大力扶植,前景一片大好,而Google似乎也沒有明顯的傾向誰更好,這一下子讓人抓狂了,讓很多開發者迷茫起來,到底學Kotlin好還是Flutter好呢?

    什麼是Kotlin?——程式語言

    Kotlin新興成為被最廣泛採用的語言之一,被認為是Android App Development的標準語言。由JetBrains設計,基本上是一種靜態型別通用的開源語言,生成可以在Java虛擬機器上執行的程式碼,Kotlin跨平臺是Kotlin的附加功能,可以編譯為JVM位元組碼,JavaScript或本地LLVM程式碼。它可用於Android,iOS,Web,桌面以及Java框架的後端開發。

    函數語言程式設計可使開發人員快速,連續地確定任務。這樣可以透過傾斜來提高產量。Kotlin是開發來管理JVM的虛擬機器的。這樣做是為了使程式語言對於設法在其系統中執行JVM的任何設計可靠。

    Kotlin中存在的程式碼被認為是可靠和值得信賴的,因為該語言會覆蓋常見的程式設計錯誤觀念,從而減少應用程式崩潰和系統故障的次數。Kotlin主要特點。

    什麼是Flutter?——UI套件

    Flutter是Google建立的開源 UI 軟體開發套件,可幫助使用單獨的程式碼庫製作具有本地外觀的應用程式。它用於開發Android、iOS、Windows、Mac、Linux、Google Fuchsia和網路的應用程式。Flutter應用程式是用Dart語言編寫的,並利用了該語言的許多高階功能。

    Google UI系統以贏得創新和市場難題為中心。因此,在短暫的時間內,Flutter變成了完美的跨平臺移動應用程式開發。Flutter主要特點。

    Kotlin vs Flutter?——非對稱的比較

    很難說Kotlin或Flutter孰優孰劣。畢竟,兩個平臺都很可靠並提供出色的功能。自推出以來,他們已經在Android和iOS應用程式市場上佔有重要的地位。儘管Kotlin在市場份額和使用率方面似乎處於領先地位,但歸根結底,最適合開發者的才是最好的,這些要求可能因開發人員而異。

    把Kotlin 和Flutter放在一起比較很詭異,合適的比較可能是Kotlin vs Dart,但是神奇的是人們就是拿這兩個來進行比較。下面分別說一下:

    Kotlin的優點:

    1.是一個SDK,而不是框架

    選擇Kotlin的最大好處是不必遷移整個應用程式。可以從單個模組或功能開始,確定其功能,然後逐步遷移其他部分。

    2.易於學習

    由於Kotlin的語法與Swift,Java,Groovy和Scala 等其他頂級程式語言非常相似,因此學習該語言非常容易。

    3.重用業務邏輯

    它不是一個使人能夠分離業務邏輯和UI的工具。但是,使其與眾不同的事實是它在UI層下采用了共享的邏輯和庫。這使移動應用程式開發人員可以跨平臺使用這些業務邏輯。

    4.本機UI體驗

    Kotlin不需要開發人員遵循任何有關UI建立的說明。它使UI開發人員可以像處理本機一樣處理應用程式的外觀,行為和效能。

    5.更高的效能

    使用Kotlin語言進行跨平臺開發的優勢之一是,多平臺會將程式碼編譯為與目標平臺完全相同的格式。這使其效能與其本地同類產品一樣出色。

    6.增強的靈活性和可伸縮性

    它使開發人員可以擴充套件其應用程式專案並在不使用任何VM的情況下執行。這使得它成為製作移動應用程式的理想選擇,同時注重靈活性和可擴充套件性因素。

    Kotlin的缺點

    1.有限的可用庫

    當前,開發環境中僅提供了一些基本庫,例如資料序列化庫和HTTP客戶端庫。儘管隨著Kotlin 1.4的到來,諸如DateTime庫之類的更多庫有望進入市場,但要實現無縫,毫不費力地構建應用程式直到今天仍然很困難。

    2.需要熟悉其他技術堆疊

    由於Kotlin多平臺並非旨在替代平臺關注的每個應用程式程式設計介面(API),因此應用程式開發公司需要具有每個平臺和API的基本知識。

    3.較高的開發成本

    最後但並非最不重要的一點是,Kotlin SDK提供了一些半本地功能。因此,構建移動應用程式需要更高的成本,最終使其不適合建立MVP和應用程式原型。

    Flutter的優點

    1.Flutter為使用者提供了出色的熱載入功能。

    這意味著高質量的熱更新功能,為後端進行更改的過程提供便利,同時還能檢視前端的修改差異。換句話說,Flutter可以更好的,隨時隨地輕鬆地確定不同元素看起來是否完美,然後在前端直接更新。

    2.高度可定製

    透過對Flutter應用程式開發進行投資,開發人員可以獲得在開發環境中使用不同小部件的機會。這使他們更容易建立速度更快,具有自定義外觀的移動解決方案。

    3.降低開發時間和成本

    Flutter 的跨平臺優勢之一是,它提供了使用單個程式碼庫為iOS和Android建立類似本機應用程式的機會。這使得建立Flutter移動應用程式的成本大大降低。

    Flutter 的缺點

    1.更大的應用程大小

    為應用程式開發計劃選擇Flutter的最主要缺點是應用程式規模太大。即使是“Hello World”應用的釋出檔案大小也約為6.7MB。

    2.在Dart中完成編碼

    無可否認,Dart易於學習且易於實施。但是,它還沒有像Java,C#,JavaScript和C這樣的同類產品流行。這阻止了開發人員註冊最好的飛鏢程式設計課程並進入Flutter行業。

    其他的關於Kotlin和Flutter的比較。

    頂級公司的選擇

    頂級公司也是:蘿蔔青菜各有所愛!!!

    程式語言或者框架的選擇

    開發語言和框架有很多,如何選擇合適的是個難題。建議考慮下面幾個方面:

    1.市場知名度

    2.學習曲線

    上手和後續精進是否容易,晦澀難懂的後面也不利於發展。

    3.效能

    本地效能表現優秀,能夠支援跨平臺的自然是優秀的。

    4.第三方庫和工具的整合

    越多的第三方庫和工具的整合,代表業界的支援程度越高。

    5.專注於多個平臺

    目前,主流的移動應用程式是Android和iOS,如果只構建一次就可以支援多個平臺,那是極好的。

    6.文件和社群支援

    文件和社群支援可以有效的幫助提升學習效率。

    7.工作和薪資範圍

    在學習時需要比較的另一個重要因素是工作和薪資範圍,畢竟出來都是混口飯吃(興趣除外)。

    寫在最後

    Kotlin和Flutter都是優秀的語音(框架/工具),它們的關注點不同,兩者的範圍並沒有真正重疊。他們都試圖提取平臺上的公共部分,Flutter更關注對檢視定義,Kotlin則對業務邏輯更感興趣。他們專注於不同的事物。

    然而2019年5月谷歌宣佈,Kotlin程式語言現已成為Android應用程式開發人員的首選語言。谷歌在公告中寫道:“Android開發將越來越多地使用Kotlin”。“許多新的Jetpack API和功能將首先在Kotlin中提供。如果您要開始一個新專案,則應使用Kotlin編寫;用Kotlin編寫的程式碼通常對您來說意味著更少的程式碼——更少的程式碼可以鍵入,測試和維護”。

    所以如果你想要進行本地應用開發,建議學習Kotlin來進行原生的Android開發(或Swift來進行iOS開發)。

    如果你想要快速構建自己的跨平臺應用,建議嘗試Flutter。

  • 4 # 我的小熊在哪裡s

    看到了我就回復一下,kotlin是安卓現在官方推薦的開發語言。當然Java也可以開發安卓,這只是安卓端的開發,flutter是一套跨平臺ui框架,如果所有都依賴別人提供的外掛是可以進行開發的,但是還是得了解其kotlin或者Java等基礎,才能更好的開發,有2個側重點,1個是瞭解kotlin基礎,然後進行flutter跨平臺開發,1個是,純kotlin進行原生開發

  • 5 # 牙膏很好吃

    kt畢竟是隻寫安卓的,flutter是ios和安卓,方向不一樣,看自身的需求啦,順便問一句,看到你的名字,是不是在慕課網上出過影片,有印象

  • 6 # 全棧開發小哥

    巧合的是,兩者都跟Google有關係,挺有意思的。

    Kotlin 是一種在 Java 虛擬機器上執行的靜態型別程式語言,被稱之為 Android 世界的 Swift。2017年 Google 宣佈Kotlin 成為 Android 官方開發語言。這樣一來,Kotlin 就成了開發Android的主流語言,當然作為執行在Java虛擬機器上的語言,Kotlin 也可以像 Java 一樣作為後臺開發語言。Kotlin 相比 Java ,是屬於更現代化的語言,語法簡潔,開發效率高,且同樣是強型別語言。

    再來說 Flutter,正常來說,Flutter 不能算是一門語言,而是 Goolge 推出的開源移動UI框架,其開發語言是 Dart,核心優勢是:一端開發,多端執行,且程式效能接近原生應用體驗。即開發一套程式碼可以在iOS和Android端執行。可以想象,一名程式設計師,開發一套程式可以執行在多端,也就是說一個人同時幹了幾個人的活!優勢當然是不言而喻。

    如果題主的開發工作主要集中在開發 Android 的話,我個人還是建議先把官方推薦的 Kotlint 用起來,因為單純針對 Android 這一個方向,使用官方語言是具備絕對的優勢的。為什麼這麼說?如果是大公司開發應用,更傾向於程式的穩定、可靠和執行效率,以及程式本身儘可能不會限制到需求的規劃。所以大公司基本不會為了節省預算,而去考慮以及其節省成本的方式,使用不足夠成熟,且周邊生態不夠全的框架(Flutter)。

    但是,也不是說 Flutter 就不行,它的優勢在小公司也是明顯的,因為一個人可以同時開發多端應用程式,這對小公司的老闆是很渴望的一件事。首先,可以少招一點人,節省成本,也可以更快速的將產品推到市場上驗證。

    最後,還是要看題主的選擇,我比較建議的方式是, Kotlin作為日常主要開發語言,抽時間玩玩 Flutter,有需求的時候可以自由切換。

  • 中秋節和大豐收的關聯?
  • 世界盃賽場上都有哪些球隊是互為宿敵的?