iT邦幫忙

2023 iThome 鐵人賽

DAY 1
1

前言

這是我第二次寫鐵人賽文章,這次想藉由撰寫鐵人賽文章來充實自我,讓開發能力可以更進一步!
這次的挑戰剛好卡到第一次出國玩XD 讓這個挑戰更具有難度了

Kotlin與Java

選擇Kotlin的原因?

為甚麼會挑Kotlin而不是Java呢?
先來介紹一下我認為Kotlin的一些好處~

不用分號

可以少打一個字,減少我們鍵盤的耗損(? 救救北極熊(?
就像python XD

null-safe


Kotlin會檢查null的錯誤,當我們想把null指派給Int type時,在intellj就會噴錯誤了。

Null can not be a value of a non-null type Int

Extension Functions

這個很好用,再我們開發專案時,我們如果使用別人的類別,但還想要客製化的時候,就可以使用,而不需要修改到原本的類別。可以說是對修改封閉,對擴展開放XD

fun Int.plusOnePrint() =
    println("${this + 1}")

fun main(args: Array<String>) {
    12.plusOnePrint() //13
}

Coroutine

據說很多Java工程師想轉Kotlin都是因為coroutine,它的主要功能是切換執行續。Java目前還不支援。

Functional Programming的函式庫

現在越來越多人在討論fp了,能支援不錯的library就擁有優勢,Kotlin就有Arrow kt這個library,不管是either、map、flatMap等都有支援。
https://arrow-kt.io/

總結

選擇 Kotlin 而不是 Java 可以提供更好的開發體驗,並在某些方面提供更高的效率和安全性,我們就可以加快開發速度,達到WLB!

參考資料

https://taiwan-kotlin-user-group.github.io/kotlin-vs-java/


下一篇
[新手村] Kotlin Spring Boot 3 啟動
系列文
Kotlin魔法:Spring Boot 3的fp奇幻冒險30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言