內容|轉自CSDN博客
對於Java開發者來說,最近幾年,Java生態圈產生了很多東西。每半年更新壹次Java版本,發布了很多流行的框架,比如Spring 5、Spring Security 5、Spring Boot 2等,都給我們帶來了巨大的挑戰。
2019剛開始的時候,我覺得Java 10還是比較新的,但是在我學會Java 10的所有特性之前,Java 1,Java 12,Java 12已經陸續來了。對於忙碌的程序員來說,基本上就是學習壹些有用的新特性。
Java版本叠代速度真的太快了,還帶來了很多有趣的特性,比如局部變量類型推斷、switch表達式、文本塊支持等等。我在Java 9 ← 2017,2019 Java → 13。發生了什麽事?這些變化記錄在中。
Java是最大的框架,Spring也是。很多人在項目中還在使用Spring Security 3.1,甚至不知道Spring 4.0和Spring Security 4.0有什麽特性。不過Spring和Spring Security都到了5.0版本。
以下是我列出的2020年Java開發者應該學習的技術:
1、DevOps (Docker和Jenkins)
在過去的壹年裏,越來越多的公司正在轉型DevOps,DevOps非常龐大,需要學習很多工具和原理,但妳不需要擔心。有大神分享了DevOps路線圖(/kamranahmedse/developer-roadmap),妳可以根據這個路線圖按照自己的速度學習和掌握DevOps。
如果妳是壹個有經驗的Java程序員,願意學習環境管理、自動化和整體改善,妳也可以成為壹名DevOps工程師。
2、Java 9 - Java 15
我相信現在很多Java開發者主要使用的Java版本主要是Java 8,雖然Java 9-Java 13已經推出壹段時間了。
但是作為Java程序員,我們可能因為某些原因無法真正升級JDK在線,但是花點時間學習Java 9,Java 10,Java 11,Java 12,Java 13的新特性還是很有必要的。
此外,您可以關註壹些關鍵特性,例如與GC相關的特性和改變了編碼風格的特性。還有LTS版Java (Java 8,Java 11),要重點學習。
還提醒大家,2020年,甲骨文將推出Java 14和Java 15!!!如果妳用的是Java 7,很快就會“循環”了!
3、彈簧框架5
2017年,我們見證了Spring和Java生態系統的多次重大升級,Spring 5.0就是其中之壹。Spring 5新的反應式編程模型,HTTP/2支持,Spring通過Kotlin對函數式編程的全面支持,都是值得了解的。
4、春天安全5.0
Spring Security 5.0提供了許多新功能,並支持Spring Framework 5.0,提供了400多項增強和錯誤修復。在Spring Security 5.0.0之前,密碼是明文存儲的,非常不安全。因為這個版本是壹個大版本,我們決定使用壹個更安全的密碼存儲方法。Spring Security 5.0.0的主要亮點是,它只需要最小的JDK 8、反應式安全功能、OAuth 2.0(OIDC)和現代密碼存儲。
5、Spring Boot 2
基於Spring 5框架,Spring Boot 2.0提供了異步非阻塞IO的響應流和非阻塞功能反應式Web框架Spring WebFlux的特性。很多用過SpringBoot的人都知道,用SpringBoot搭建Web應用真的又快又好,相信Spring Boot 2會帶來更多驚喜。
6.Hadoop、Spark和Kafka
另外,2020年,Java程序員需要學習大數據。尤其是阿帕奇火花和卡夫卡。
2020年想學大數據,就不能回避Hadoop生態系統。
7、彈性搜索
全文搜索是最常見的需求,開源的Elasticsearch(以下簡稱Elastic)是目前全文搜索引擎的首選。維基百科,棧溢出,Github都在用。
Elasticsearch是壹個基於Lucene庫的搜索引擎。它提供了壹個分布式多租戶全文搜索引擎,帶有HTTP Web界面和非模態JSON文檔。Elasticsearch用Java開發,在Apache許可下作為開源軟件發布。
8、服務網格
這兩年壹直很熱,火的壹塌糊塗。2019但是所有程序員相關的會議,如果不談ServiceMest這個話題都很尷尬。
大家都在說ServiceMesh;
幾乎沒有人知道如何登陸ServiceMesh;
但是大家都覺得別人在做ServiceMesh大力;
於是大家都聲稱自己在做ServiceMesh;
這個概念,被稱為下壹代微服務架構,現在大多數人都不知道。我只知道很多大廠都自稱在做,很多大牛都在說教。
9、無服務器
無服務器計算,也稱為功能即服務(FaaS),是雲計算的壹種模式。基於平臺即服務(PaaS),無服務器計算提供了壹個微架構。終端客戶不需要部署、配置或管理服務器服務,代碼運行所需的所有服務器服務都由雲平臺提供。這東西聽起來很高大上。
10、科特林
如果妳關註Java 13的新特性,妳壹定知道字符串文本塊的功能其實是借用了Kotlin。另外,近年來Java的很多特性都是借鑒了Kotlin。與Java相比,Kotlin更加簡潔,Kotlin編譯的代碼也可以直接通過JVM運行。
Kotlin是壹種運行在Java虛擬機上的靜態類型編程語言,也可以編譯成JavaScript源代碼。Kotlin最初被設計用來產生具有高性能要求的程序,因此它與Java並駕齊驅。Kotlin可以用作開發工具Jetbrains Intellij Ideide的插件。
摘要
以上是筆者建議Java程序員在2020年學習的壹些技巧,希望能給熱愛學習的妳壹個參考。其中壹部分是必須要學習的,另壹部分要根據每個人的精力來考慮。
原文鏈接:/Hollis _ Chuang/article/details/103902974