欧美日韩国产成人_日韩网站在线观看_国产精品sss_国内自拍亚洲

登錄注冊
新聞 資訊 金融 知識 財經 理財 科技 金融 經濟 產品 系統 連接 科技 聚焦
首頁 > 金融 > > 正文

為什么 Java 后端開發沒有大規模采用 Kotlin?

2021-04-18 10:45:36來源:互聯網

作者 | Ivan Sanchez

譯者 | 王者

策劃 | 萬佳

在使用了 Java 15 年后,我寫了第一行 Kotlin 代碼,到現在已經差不多 5 年了。我們的團隊用 Utterlyidle 替代 Spring,用 Totallylazy 進行函數式編程。我們是 IntelliJ 的忠實粉絲,并試著充分利用它提供的 Java 工具。

那個時候,我們不只使用 Java。有一些團隊對 Scala 感興趣,并用它開發了一些服務。但是,因為 Scala 與 Java 代碼庫協作的復雜性以及緩慢的構建時間,對于我們大多數人來說,它并沒有太大吸引力。

2017 年,谷歌宣布 Kotlin 成為 Android 的官方開發語言,另一個與我們關系密切的團隊開始評估是否可以在他們的服務器端開發中使用它。最后,我們大多數人都去嘗試了一下。

我被 Kotlin 給代碼庫帶來的影響震撼到了。它給人的感覺是更高效、更安全,雖然開發工具沒有 Java 那么成熟,但也足夠好了。

從一門陳舊而冗長的編程語言中解脫出來,并探索哪些編碼風格更適合 Kotlin 的特性,這本身就是一件非常有趣的事情。Kotlin 與 Java 出色的互操作性意味著我們可以增量地依賴現有的生態系統和過渡系統,而不會對工作造成重大干擾。

很快,由于對 Kotlin 的興趣,我們一起開發了 http4k,一個用于開發 Kotlin HTTP 應用程序的工具包,并組織了 Kotlin 開發研討會,幫助其他團隊嘗試使用 Kotlin。

最后,我們看到其他各種項目也在服務器端使用 Kotlin,也看到了一些團隊強烈不愿意采用 Kotlin 的原因。

有意思的是,這種抗拒并不總是因為編程語言本身。那么,為什么 Java 服務器端開發社區沒有更多地采用 Kotlin 呢?

以下是我和我的同事們看到的一些原因。

1

“我們沒有時間學習一門新語言”

這也就是我們在軟件開發項目當中經常看到的“忙著砍柴沒時間磨斧子”現象。這通常預示著更深層次問題,比如不斷增加的技術債務和開發效率問題。

健康的軟件項目需要開發者花大量時間去學習。一個有能力的 Java 開發者可以在數小時內掌握 Kotlin 的基本知識,并在數天內提高開發效率。

如果采用新語言可以讓他們寫的代碼更簡單,遇到的問題更少,那么投入就是值得的。

2

“Java 的每一個版本都在變得更好”

這是真的,Java 正在變得更好,而且發布的速度也越來越快。但是,對于處理空值這么簡單的事情,仍然遠遠落后于 Kotlin。

也許 Java 社區已經習慣了這種演化速度。盡管如此,Kotlin 還是提供了一種方法,可以在項目中用上很多 Kotlin 特性。

3

“作為 Java 開發者,我們感到很自豪”

這種想法是最要命的。如果一個程序員把他們的專業身份和一種編程語言聯系在一起,那就沒有辦法了。

如果說 Java 開發者不想賭上自己的事業踏入一門新語言的未知領域,我可以理解。或者他們可能想成為一個領域的專家,這也很合理。

但是,我也并沒有看到哪個 Java 開發者因為使用 Kotlin 而“落后”了。相反,這表明他們一直在尋找適合自己的工具,這是一種積極的特質。

4

“Kotlin 是一種被炒作的語言,它的未來是未知的”

這是我們在 2017 年經常聽到的反對采用 Kotlin 的說法。在那一年,谷歌宣布將 Kotlin 作為 Android 的官方開發語言,讓我們確信科技巨頭們對這門語言是感興趣的。

現在,Spring 和 Micronaut 等流行框架似乎已經接受了這門新語言,之前的反對聲就不那么經常聽到了。

希望這能讓更多的服務器端開發對這門語言有足夠的了解,并嘗試一下。

5

“我正在使用 Eclipse,不想切換到 IntelliJ”

在 Eclipse 中使用 Kotlin 的體驗與 JetBrains 的 IDEA 不太一樣。

這是可以理解的,因為銷售開發工具是 JetBrains 的商業模式之一,而且這種情況短期內不太可能改變。

對于這些人來說,他們能夠期望的是 Kotlin 可以達到一個質量臨界點,證明 Eclipse 為它提供進一步的支持是值得的。但在此之前,對于 Kotlin 開發者來說,最好的開發體驗仍然是使用 JetBrains 產品。

我認為,IntelliJ 已經是一個更好的 Java IDE 了,所以它也值得一試。

6

“Kotlin 開發者太貴了,而且很難招到”

這一點很難說,從招聘網站的數據來看,Kotlin 開發者的薪資總體上略高一些。

如果我們只考慮服務器端開發者,就很難進行比較。一般來說,Java 開發者的薪資是最高的,但在 Kotlin 方面并沒有足夠的數據來進行比較。

有趣的是,在實際當中,我們可以看到高級 Java 開發者經常是率先采用 Kotlin 的人,這可能會給人留下 Kotlin 開發者很“貴”的印象。

在招聘方面,我們并沒有覺得很難招到 Kotlin 開發者。我們很清楚,有些工作需要使用這門新語言,并允許開發者在工作中邊學邊用。

這似乎讓 Java 開發者放下心來,并吸引了那些熱衷于學習新事物的人。

7

“Kotlin 太復雜了”

Kotlin 之所以成為 Scala 等語言的替代語言,其中一個原因是它在易用性和高級特性之間取得了良好的平衡,與 Java 具有更好的互操作性,所以更有可能被流行框架采用。

在實際當中,這種反對聲與團隊的技能、風格和習慣有關。

初學者一般會像使用 Java 一樣使用 Kotlin,但隨著他們越來越熟悉這門語言,可能會深入使用一些特性 (例如擴展和內聯函數),從而導致代碼庫變得越來越難以理解。

在團隊完全掌握新語言之前,我們建議盡可能長時間地使用普通的 Kotlin 特性。最后,團隊中的大多數人都會在選擇很酷的語言特性和保持代碼庫易于理解之間找到平衡點。

8

“在一個代碼庫中使用兩種語言讓人感到困惑”

這是在實際項目中沒有嘗試過 Kotlin 的人經常會有的擔憂。

在實際當中,當團隊意識到新的 Kotlin 代碼需要與 Java 共存,那么在一個項目中使用兩種語言并不會給他們造成很大的痛苦。

這里有一個有用的規則:“如果一個變更涉及到兩種語言,首先將舊代碼轉換成 Kotlin”。

這樣,團隊就可以避免大爆炸式的重寫,并將需要添加新特性的地方進行逐步遷移。

如果需要保留一些 Java 代碼,那也沒關系。很有可能是因為這些代碼仍然有用,并且沒有進行重構的迫切需求。

9

“我們更喜歡 Java”

在實際當中,有一些場景不一定要使用 Kotlin,一切仍然能夠進行得很順利,團隊能夠以可接受的速度完成工作。

然而,根據我們的經驗,這是例外,而不是常態。通常情況下,這種對語言的抗拒源于缺少時間和興趣,而不是因為沒有可提升的空間。

如果沒有在真正的項目中使用 Kotlin,是也很難體會到 Kotlin 的好處的。即使是作為一個實驗,也存在很多焦慮。

對于這種情況,我們建議“在工作中邊學邊用”(以編碼道場、培訓等形式),創造一個可以進行這種實驗的安全環境。

這樣可以幫助團隊評估他們對 Java 的使用狀況,以及是否值得在 Kotlin 上投入。

10

“我看不出 Kotlin 會帶來什么好處”

有時候,Java 開發者意識不到語言方面存在的限制,或者是因為他們已經習慣了。有時候,他們會抗拒新語言,因為新語言會讓他們質疑自己正在使用的語言。

在不深入細節的情況下,我們可以說 Kotlin 的簡潔性和安全性是它的主要優點。然而,有些人聲稱他們不認為 Java 的冗長有什么問題,并且寫出來的代碼也很安全。

在真正去嘗試 Kotlin 之前,人們很容易將其忽略掉。而在真正面對它的時候,一些人會繼續尋找不嘗試使用它的理由。

11

一些想法

采用一種新的編程語言,特別是在正在進行的項目當中,這對于大多數團隊來說都是一個挑戰。對變化的抗拒與特定的環境有關,與項目需求和個人原因以及語言本身也有關。

話雖如此,我仍然鼓勵更多從事 Java 服務器端的開發者,如果有機會的話,可以嘗試一下 Kotlin。

https://medium.com/google-developer-experts/why-are-java-server-side-developers-not-adopting-kotlin-8eb53e06ee99?fileGuid=nbh1KOt8ZzMdpX2m

關鍵詞: 為什么 Java 開發 沒有

熱點
欧美日韩国产成人_日韩网站在线观看_国产精品sss_国内自拍亚洲
成人激情校园春色| 1区2区3区精品视频| 色94色欧美sute亚洲线路一ni | ●精品国产综合乱码久久久久 | 91.xcao| 精品粉嫩aⅴ一区二区三区四区| 国产片一区二区三区| 一区二区三区中文字幕| 老司机免费视频一区二区三区| 成人小视频在线| 欧美精品 国产精品| 久久久久久亚洲综合| 亚洲午夜精品网| 国产成人精品一区二区三区四区| 欧美伊人久久久久久久久影院 | 亚洲色图20p| 热久久免费视频| av不卡免费电影| 日韩欧美专区在线| 一区二区三区欧美日韩| 另类欧美日韩国产在线| 色久综合一二码| 久久久久久9999| 秋霞国产午夜精品免费视频| 色婷婷国产精品久久包臀| 久久久噜噜噜久久人人看 | 精品一区二区影视| 欧美无人高清视频在线观看| 亚洲国产成人一区二区三区| 麻豆精品在线看| 欧美日本免费一区二区三区| 1024成人网色www| 国产电影一区二区三区| 日韩欧美在线1卡| 午夜伊人狠狠久久| 在线观看亚洲一区| 亚洲精品美国一| 91在线视频网址| 国产精品狼人久久影院观看方式| 国产剧情在线观看一区二区| 2020国产精品自拍| 老司机免费视频一区二区| 69精品人人人人| 日韩成人一区二区三区在线观看| 日本精品一区二区三区高清| 国产精品久久三| 不卡的电视剧免费网站有什么| 国产亚洲婷婷免费| 国产精品一区二区果冻传媒| 久久老女人爱爱| 国产精品18久久久| 久久综合狠狠综合久久综合88| 久久99精品一区二区三区三区| 在线成人av影院| 久色婷婷小香蕉久久| 精品国产露脸精彩对白 | 国产一级精品在线| 久久影院电视剧免费观看| 国产精品1024| 中文文精品字幕一区二区| 99久久夜色精品国产网站| 亚洲欧洲在线观看av| 91美女视频网站| 亚洲影视资源网| 91精品蜜臀在线一区尤物| 免费观看在线色综合| 日韩免费观看高清完整版| 国产老妇另类xxxxx| 中文字幕色av一区二区三区| 色综合色狠狠天天综合色| 亚洲一区二区美女| 欧美不卡在线视频| 成人深夜福利app| 亚洲一区二区精品久久av| 欧美一区二区三区思思人| 国产乱码精品一区二区三区av| 欧美国产一区在线| 欧美日韩一区 二区 三区 久久精品 | 91美女蜜桃在线| 日本不卡一二三区黄网| 亚洲国产精品成人综合| 在线观看一区二区精品视频| 亚洲激情自拍偷拍| 欧美精品成人一区二区三区四区| 日韩—二三区免费观看av| 久久色在线观看| 91国偷自产一区二区开放时间| 亚洲1区2区3区4区| 久久久不卡网国产精品一区| 欧美体内she精高潮| 国产高清视频一区| 亚洲高清久久久| 国产精品美女久久久久久久网站| 欧美日韩激情一区二区| 国产成人av网站| 亚洲国产综合人成综合网站| 国产丝袜欧美中文另类| 宅男噜噜噜66一区二区66| 懂色av一区二区三区蜜臀| 青椒成人免费视频| 亚洲精品网站在线观看| 国产嫩草影院久久久久| 在线成人av网站| 色94色欧美sute亚洲线路二 | 天堂精品中文字幕在线| ...av二区三区久久精品| 精品国产污网站| 制服丝袜日韩国产| 欧美三级欧美一级| 欧洲一区二区三区免费视频| 99精品在线观看视频| 国模娜娜一区二区三区| 久久福利资源站| 免费观看久久久4p| 男人的天堂久久精品| 午夜一区二区三区在线观看| 亚洲制服丝袜在线| 一区二区三区欧美日韩| 樱花草国产18久久久久| 成人免费在线视频观看| 国产精品丝袜黑色高跟| 国产欧美一区二区在线观看| 国产亚洲视频系列| 久久久不卡网国产精品二区 | 欧美色窝79yyyycom| 色哟哟一区二区三区| 91丝袜美腿高跟国产极品老师| 成人国产视频在线观看| av激情综合网| 日本道在线观看一区二区| 91麻豆免费看| 欧美性极品少妇| 欧美日韩久久久| 日韩三级电影网址| 国产丝袜在线精品| 亚洲欧洲精品一区二区三区| 亚洲手机成人高清视频| 一区二区三区视频在线看| 亚洲一区在线播放| 男女男精品网站| 国产美女精品人人做人人爽 | av资源站一区| 在线欧美日韩国产| 欧美一个色资源| 国产情人综合久久777777| 国产精品福利av| 亚洲1区2区3区4区| 久久99精品视频| 成人国产免费视频| 欧美亚洲禁片免费| 欧美成人欧美edvon| 国产欧美日韩不卡| 午夜影院久久久| 国产一区二区三区黄视频| caoporen国产精品视频| 精品视频999| 国产日韩欧美不卡| 亚洲国产你懂的| 国产黄色精品视频| 在线看国产一区| 久久色视频免费观看| 亚洲综合成人在线| 国产成人aaaa| 制服.丝袜.亚洲.另类.中文| 中文av一区特黄| 蜜桃视频一区二区三区在线观看 | www.欧美.com| 欧美一区二区在线不卡| 中文字幕欧美激情一区| 日韩和欧美一区二区| 波多野结衣精品在线| 精品日韩av一区二区| 一区二区在线观看免费视频播放| 捆绑紧缚一区二区三区视频| 99国产精品99久久久久久| 精品国产一区a| 日本sm残虐另类| 色网站国产精品| 国产欧美日韩一区二区三区在线观看| 亚洲一区二区三区四区在线免费观看 | 精品久久人人做人人爰| 亚洲高清视频中文字幕| 色哟哟在线观看一区二区三区| 久久网这里都是精品| 蜜桃精品在线观看| 欧美日韩成人激情| 亚洲一级二级三级| 91亚洲精品一区二区乱码| 亚洲国产精品精华液ab| 激情综合色播五月| 欧美一区二区三区免费| 亚洲第一成年网| 欧美天堂一区二区三区| 一区二区三区日本| 91视频国产资源| 亚洲老司机在线| 色综合天天综合网天天狠天天| 亚洲欧美日韩国产另类专区| 色视频成人在线观看免| 亚洲影院免费观看|