Java 14 都快來了,為什么還有這么多人固守Java 8?

管理員賬號

2020-01-10

從Java 9開始,Java版本的發布就讓人眼花繚亂了。

每隔6個月,都會冒出一個新版本出來,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份,Java 14就要來了。

說實話,這種頻繁的發布有點兒讓人審美疲勞,每次我看到介紹Java新版本,新特性的文章也沒興趣點開看了。

在這么多的版本中,只有Java 8, Java 11 和未來的Java 17 是長期支持版本(LTS),Oracle會支持3年,其他的只會支持6個月,新版本一出,就放棄老版本的技術支持。

這種快速的發布有好處嗎?

有 ! 小步快跑一直是我們軟件開發的利器,采用迭代的方式,每次發布一部分功能,推向開發人員去驗證,典型的敏捷思路。

但是這種好處更有利于JDK的開發者,對使用Java的個人和公司來說,想要跟上每六個月就要升級的步伐,實在是太難了。JDK是個非常核心的基礎設施, 除了安全漏洞,誰沒事去升級生產環境的JDK???出了問題誰負責?

所以,按道理講大家都會去找那些LTS的版本來升級,例如Java 11, 但是事實證明大部分人還在固守Java 8 :

這個調查顯示,使用Java 8的公司和程序員高達80%, 這是為什么呢?大家為什么不升級到Java 11呢?

我個人覺得主要原因是對開發有利的重大特性升級很少,吸引力不夠。

在過去的十幾年中,Java相繼引入的泛型、注解、NIO、函數式編程等核心功能,極大地影響了應用程序開發的方式,你能想象現在的Java中沒有注解會是什么樣子嗎?

這幾年的Java版本中,就缺乏這種重大功能的升級了,我把我有點印象的功能升級列一下:

注意黑體的這幾項, Java 9引入了模塊化系統,這是個看起來很美的特性,可是對程序員來說,這是一個破壞性的更新,因為JDK做了模塊化,但是很多第三方庫沒有做模塊化, 如果想讓自己的項目也模塊化,很有可能是一次不斷填坑的經歷,尤其在使用第三方庫的時候。

Java 11的ZGC是個有吸引力的特性,它的設計目標是:支持TB級內存容量,GC暫停時間低(<10ms),對整個程序吞吐量的影響小于15%,確實挺讓人激動的!如果真的實現了,程序員就可以可勁兒造對象,而不用考慮GC了,可惜這仍然是個實驗性質的版本。

至于局部變量類型推導,也只是方便了變量的聲明而已。

一個JDK的版本如果想被廣泛采用,一定得能提升開發效率(如泛型、注解),帶來變革,這樣才有吸引力, 如果給程序員們帶來了麻煩, 大家就會用腳投票了。

優秀的技術人員應該具有廣闊的技術視野,同時擁有貫通的技術深度,博文菌今天要向你推薦的這本書,可以算的上是還在學海中苦苦掙扎的程序員的福音——《碼農翻身》

技術本來是很簡單的,只是上面籠罩著層層迷霧,讓初學者難以看清。本書講了很多很多故事,在讀故事的過程中就能輕松掌握相關技術,讓你在暢快的閱讀后,會有一種“原來如此”的感覺。

書中把計算機元素和行為用擬人手法編成一個個精彩紛呈的故事,繪聲繪色且深入淺出地演繹晦澀枯燥的編程知識。學習優秀的架構師是如何思考、如何抽象、如何成長的,從操作系統、Java語言到Web技術,每個主題都深入淺出。

讀者評論

相關博文

  • 社區使用反饋專區

    陳曉猛 2016-10-04

    尊敬的博文視點用戶您好: 歡迎您訪問本站,您在本站點訪問過程中遇到任何問題,均可以在本頁留言,我們會根據您的意見和建議,對網站進行不斷的優化和改進,給您帶來更好的訪問體驗! 同時,您被采納的意見和建議,管理員也會贈送您相應的積分...

    陳曉猛 2016-10-04
    3682 620 3 6
  • 迎戰“雙12”!《Unity3D實戰核心技術詳解》獨家預售開啟!

    陳曉猛 2016-12-05

    時隔一周,讓大家時刻掛念的《Unity3D實戰核心技術詳解》終于開放預售啦! 這本書不僅滿足了很多年輕人的學習欲望,并且與實際開發相結合,能夠解決工作中真實遇到的問題。預售期間優惠多多,實在不容錯過! Unity 3D實戰核心技術詳解 ...

    陳曉猛 2016-12-05
    2321 34 0 1
  • czk 2017-07-29
    3014 22 0 0

推薦用戶

澳洲幸运10现场开奖 河北20选5下期杀号推荐 广东好彩1的开奖记录 一码中奖免费公开资料201 北京赛车开奖直播 体彩环岛赛玩法规则 000 001上证指数走势图 齐鲁风采山东群英会下载 东方汇赢配资 黑龙江11选5联网软件 聚众赌博拘留多少天