91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java服務器端開發人員不采用Kotlin的原因是什么

發布時間:2021-10-15 09:13:20 來源:億速云 閱讀:139 作者:iii 欄目:編程語言

這篇文章主要講解了“Java服務器端開發人員不采用Kotlin的原因是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Java服務器端開發人員不采用Kotlin的原因是什么”吧!

自使用Java十五年后,我寫第一本Kotlin書到現在已經快五年了。

我們的團隊沒有遵循典型的Java手冊:我們使用Utterlyidle而不是Spring,并采用Totallylazy的函數式編程方法。我們是IntelliJ的忠實擁護者,并試圖充分利用它為Java提供的工具。

Java服務器端開發人員不采用Kotlin的原因是什么

那時,我們的眼光已經超越了Java。有一些團隊對Scala感興趣,我們已經用它編寫了一些服務。但是,與Java代碼庫一起工作的復雜性、痛苦以及緩慢的構建時間,使得這種語言對我們大多數人都沒有吸引力。

當谷歌在2017年宣布Kotlin將成為Android開發的官方語言時,另一個與我們關系密切的團隊在他們的服務器端開發中評估了這種語言。最終,我們中的大多數人都嘗試了一下。

Kotlin對我們代碼庫的影響令我震驚。它讓人感覺更有成效,更安全,而且工具雖然沒有Java那么成熟,但也足以讓我們值得采用。

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

很快,我就對Kotlin產生了興趣,共同創建了http4k,一個用于Kotlin  HTTP應用的函數式工具包,并舉辦了“真實世界Kotlin開發研討會”,幫助其他團隊進行同樣的轉型。

最終,我已經轉到了其他崗位,但很幸運地看到了Kotlin在其他各種項目的服務器端的應用。而我也親身經歷了一些團隊強烈不愿意采用Kotlin的原因。

很奇怪的是,阻力并不總是來自于實際語言的優劣。那么,為什么Java服務器端社區沒有更大程度地采用Kotlin呢?

我和我的同事遇到的一些原因如下:

我們沒有時間學習一種新語言

這就是我們在軟件項目中常見的“忙著砍柴,忙著磨斧頭”的變種。這通常是更深層次問題的征兆,如不斷增加的技術債務和一般的生產力問題。

健康的軟件項目總是需要相當數量的學習。而一個稱職的Java開發人員可以在幾個小時內掌握Kotlin的基礎知識,并在幾天內就會有合理的生產力。

當他們寫出更簡單的代碼和處理更少的問題時,因為新的語言而提高生產力,這是一項值得的投資。

每個版本的Java都在不斷完善

這是真的:Java正在變得更好。而且發布的速度也越來越快。另一方面,在處理空性這樣的簡單事情上,它仍然遠遠落后于Kotlin。

也許Java社區已經習慣了這種語言的發展速度。盡管如此,Kotlin仍然提供了一種方法,可以在他們的項目中利用這些特性中的許多(以及更多)。

作為Java開發人員,我們感到很高興

這種阻力是最棘手的。如果一個程序員把自己的職業身份綁在單一的編程語言上,那就沒什么辦法了。

一方面,如果Java開發人員不想賭上自己的事業,跳進一門新語言的未知領域,我可以理解。或者他們想成為一名長期的專家,這很公平。

另一方面,我還沒有看到Java開發人員因為使用Kotlin而“落后”。相反,這表明他們一直在尋找適合自己工作的最佳工具,這是一個積極的特質,至少對我幫助招聘的人來說是這樣。

Kotlin是一門炒作高漲的語言,前途未卜

Java服務器端開發人員不采用Kotlin的原因是什么

這是我們在2017年前后看到的一個常見的反對意見。在那一年,谷歌接受了Kotlin作為Android開發的一流語言,讓我們放心,大玩家們對這門語言的長久發展很感興趣。

今天,這種情況可能不太常見,因為像Spring和Micronaut這樣的流行框架似乎已經接受了新語言。

希望能給這門語言足夠的知名度,讓更多服務器端的人嘗試一下。

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

可以公平地說,Eclipse中的Kotlin體驗可能與JetBrains IDEA不符。

這是可以理解的,因為JetBrains的商業模式包括出售其開發人員工具。而且這種情況不太可能很快改變。

他們唯一的希望是Kotlin達到一個臨界質量,從而證明對Eclipse支持的進一步投資是合理的。在此之前,對于Kotlin開發人員來說,最好的開發體驗仍將停留在JetBrains產品上。

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

Kotlin開發人員太昂貴了,很難獲得

很難評估這一點:在薪金網站上,可以得出結論,Kotlin的薪水總體上略高。

如果我們只想考慮服務器端開發人員,那就很難比較了。一般來說,那是Java領域工資最高的領域,Kotlin方面的數據還不夠多,無法比較。

坊間傳聞,我們在實踐中看到,資深的Java開發人員往往是最早采用Kotlin的人,這可能會給人一種Kotlin開發人員很貴的印象。

在招聘方面,我們還沒有看到吸引Kotlin開發人員的問題。我們明確工作需要使用新語言,并接受開發人員在工作中學習新語言。

這似乎能讓Java開發人員安心,吸引那些熱衷于學習新東西的人,這也是一個潛在的合適指標。

Kotlin太復雜了

Kotlin之所以能成為Scala等語言的一個引人注目的替代品,原因之一是它在開發者的易用性和高級特性之間取得了適當的平衡,使其與Java的可操作性和被流行框架采用成為可能。

在實踐中,這種異議往往與個人團隊的技能、風格、慣例有關。

初學者往往會像編寫Java一樣開始編寫Kotlin。隨著他們對這門語言越來越熟悉,他們很可能會把一些功能(如擴展和內聯函數)推得太遠,使得代碼庫對新手來說難以理解。

在團隊完全勝任新語言之前,我們強烈主張盡可能長時間地使用Boring  Kotlin(TM)。最終,大多數團隊都會在挑選很酷的語言特性和讓整個團隊都能使用代碼之間找到平衡點。

在一個代碼庫中使用兩種語言令人困惑

那些沒有在實際項目中嘗試過Kotlin的人們普遍擔心。

在實踐中,只要團隊認同并注意到新的Kotlin代碼一開始需要與Java共存,在一個項目中使用兩種語言并不會帶來明顯的痛苦。

一個可以幫助的規則是:"如果改動涉及到兩種語言,首先要把舊的代碼轉換成Kotlin"。

這樣一來,團隊就可以避免大刀闊斧的重寫,而逐步遷移需要增加新價值的地方。

如果有些代碼還保留在Java中,那也沒關系。很有可能是因為代碼還能用,沒有迫切的需要重構。

我們對Java感到更自在

在實踐中,可能是特定的上下文不需要新的語言。一切都很好;團隊以可接受的速度完成了事情,并且很好地掌握了Kotlin將幫助解決的問題。

然而,根據我們的經驗,這是例外而不是常規。更多的時候,這種阻力源于普遍缺乏時間或學習興趣,而不是缺乏需要改進的地方。

在嘗試真正的項目之前,也很難體會到Kotlin的好處,引入一門新的語言,即使是作為實驗,也會引起很多焦慮。

在這些情況下,我們推薦 "在職學習"(以編碼dojos、布朗包會議等形式),以創造一個安全的環境,讓這種實驗能夠發生。

這種方法可以讓團隊評估他們對Java的使用和是否值得投資Kotlin。

我不知道Kotlin會帶來什么優勢

有時,Java開發人員不知道語言的局限性,或者太習慣于這些局限性。其他時候,他們會拒絕任何讓他們質疑當前選擇的語言的選擇。

我們不細說,可以說Kotlin的簡潔和安全是它的主要優勢。然而,有些人會說他們不認為Java的啰嗦有問題,寫出的代碼已經很安全了。

在嘗試之前很容易否定Kotlin,當面臨選擇時,少數人會繼續尋找理由不嘗試。

感謝各位的閱讀,以上就是“Java服務器端開發人員不采用Kotlin的原因是什么”的內容了,經過本文的學習后,相信大家對Java服務器端開發人員不采用Kotlin的原因是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大厂| 福建省| 安化县| 濮阳市| 德令哈市| 天水市| 南汇区| 鸡西市| 湖州市| 桐城市| 遵化市| 富源县| 澄城县| 海阳市| 策勒县| 上杭县| 五台县| 龙里县| 辽中县| 平乡县| 汝城县| 尼玛县| 霍城县| 遂昌县| 浦城县| 武城县| 繁昌县| 汶上县| 漳浦县| 长沙县| 汝南县| 大余县| 修水县| 西城区| 临沧市| 周口市| 长子县| 千阳县| 武城县| 固阳县| 柳州市|