2020年8月5日 星期三

開發Android App到底該用哪一個程式語言?來談談Koltin與Java,看這篇就對了!



Google於2019年5月宣布Kotlin作為Android開發的首選語言時,重新掀起程式設計師們的討論。其實要選擇哪個程式語言,根據開發人員本身的習慣與狀況就可以做出選擇,但在不同情況下,選擇Java跟Kotlin也會有優缺點,我們根據許多狀況還有資深程式開發人員的意見,分析出兩種語言的優缺點,想選什麼?看這篇就對了!


【程式語言的發展】

Java

Java有很多論壇,許多函式庫,還有許多現成的模組提供使用,如果開發人員遇到問題,可以快速獲得問題答案。

Kotlin

相較於Java,Kotlin剛好相反,Kotlin因為推出沒有Java久,沒有像Java一樣有這麼多論壇及相關資源,開發人員需要花比較多時間去找解決方法。

【程式碼長度】

Java

Java的程式碼比Kotlin長,因此編寫時間也比較久。

IDAP的Android開發人員Artyom Borisovsky提到

兩個程式語言在外觀上其實很相似,但他們卻也有很大的不同,下面是範例:

Java

final TextView helloTextView = (TextView) findViewById(R.id.text_view_id);

helloTextView.setText("Some text");

Kotlin

helloTextView.text = "Some text"

Kotlin

Reksoft的軟件工程師Evgeny Pavlov提到:

Kotlin可以使用更少的代碼(Null安全性等)來編寫與Java相同的東西,UI的部份也因為有了Android擴展,不再需要使用findViewById來處理。


【Android開發初期要選擇什麼】


Java

IDAP的Android開發人員Artyom Borisovsky提到

現在,Kotlin已經成為Android開發的最佳選擇。但是,如果您是初學者,那麼一開始也許適合選擇Java:Java發展比較久,比較容易找到資源及解決問題的答案。


Reksoft的軟件工程師Evgeny Pavlov提到:

很難想像沒有Kotlin的Android,但是Kotlin的編碼是預設開發人員已經知道Java程式語言,因此,如果您是Android開發人員初學者,我建議最好開始學習Java,然後再切換到Kotlin。


Kotlin

開發人員可以在不熟悉Java的情況下開始學習Kotlin。Kotlin仍然使用JVM,儘管它在Android開發中佔有一定的位置,但JVM並不完美,但如果您打算選擇Kotlin,最好同時學習兩種語言。


【開發環境】

Java

長期以來,Android應用程式開發與Android Studio緊密相關。此環境最初是為使用Java而優化的,因此可以一次按字面意義編寫代碼。

Kotlin

Reksoft的軟件工程師Evgeny Pavlov提到:

由於Android Studio基於Intellij Idea,並且Intellij Idea和Kotlin由JetBrains創建和開發,因此,開發人員可以使用Kotlin獲得與最好最新的開發環境,大大簡化了應用程式開發。



【選擇的語言是出於什麼目的】

Java

現有大多數Android App都是用Java編寫,很多人希望重新再使用Kotlin重寫;由於Android操作系統UI是用Java開發的,因此Java語言具有SDK和許多現成的函式庫,因此許多公司仍偏愛Java。

Kotlin

SimbirSoft移動開發負責人Dmitry Nemov提到:

如果開發人員想開發的App使用時間會很久(例如,網路銀行),並且不討論跨平台開發的問題之下,我們認為Kotlin是最佳選擇。Kotlin與Java完全相容,這代表著兩種語言都可以在同一項目中使用;Kotlin若是與Java的舊版本(7或更早版本)相比,前者具有許多新功能讓編寫程式碼更容易,同時,Kotlin不像Java 8那樣依賴Android版本。


【資深開發人員的觀點】


Java


Kotlin相對Java來講,發展沒這麼久,誰都不知道接下來會發生什麼,而Java具有跨平台的特徵:App也是基於Java。


IDAP的Android開發人員Artyom Borisovsky提到:

現代公司越來越多使用Kotlin開發App,但是開發人員還是可以找到一個僅適用於Java的函示庫,如果開發人員不懂該語言,就會比較困難。

Kotlin

現在Kotlin的發展相當可預測,並且專注於Android開發。越來越多新創公司選擇Kotlin,目前大量缺少Kotlin開發人員,因此對該語言有很大的需求。Kotlin也許不太可能取代Java,但很快Kotlin就能與Java共存並逐漸普及。

【其他專家的想法】


Valeria Meryaseva,MediaSoft IT公司的Android開發人員

為了開發Android應用程序,我建議從Java開始。這是雙贏的,因為如果您可以學習Java,那麼切換到Kotlin並不困難。並且我認為,如果不了解Java就不可能了解Kotlin。Kotlin近幾年才出現,已經在開發人員中非常流行,它與Java具有最大的兼容性,這意味著,您可以使用兩種程式語言的優勢編寫你的專案

tproger.ru公司

我們的團隊使用Kotlin,由於需要支援舊專案,我們無法完全放棄Java。我們都認同使用Kotlin更容易和方便,程式碼看起來更加簡潔和易於理解,該語言具有Java所沒有的功能-Null安全性、擴展函數等,更重要的是Kotlin面向函數式編程,使用高階函數,lambda等,這可以減少開發時間,某些狀況在Kotlin程式語言中可以更容易實現。每個人都可以選擇這兩種編寫程式碼,但我認為,一旦開發人員使用Kotlin並了解其功能,沒人會想回到Java。


EPAM軟件工程師Artyom Fogel

很久以前,在我的工作中,我選擇了Kotlin,Kotlin的簡單性和可用性、安全代碼,不可變性等等,此外Kotlin還提供協程,大大地簡化了異步工作,以上優點可以使開發人員編寫更少的程式碼並簡化操作,Kotlin與Java的完全兼容性更可以讓開發人員不用花太多力氣從頭開始寫專案。

另外,在2017年Google I / O大會上,Kotlin正式推出,而Java作為公認的Android主要開發語言,在Android中的未來仍不清楚,目前各種情況都顯示出Kotlin是一個巨大的優勢。我認為,將來Kotlin可能會完全將Java淘汰出Android開發市場。


總結:
看了這麼多資深專業人員針對Kotlin與Java的分析,想必未來在選擇App開發時有更明確的目標。其實每種程式語言都各有優缺點,開發人員只要針對自己的狀況、公司以及專案的發展做出適當的選擇就可以囉!

當然我們也是建議兩個都學,Kotlin不僅是明日之星而且語法簡潔,可以快速編寫程式;而Java卻能協助你支援很多舊的專案,並且也能和Kotlin完全相容,讓程式設計職涯可以多一些發展的空間!



【Android App開發建議課程】


Kotlin


Java



0 意見:

張貼留言