推薦 7 個神級 Java 開源項目

程序猿久一 發佈 2022-03-10T07:32:27+00:00

本篇文章盤點的 Java 項目是由 7 位讀者推薦,這些 GitHub 項目都是 Star 20k +,包含 Java 教程、學習手冊、實用插件、工具等等:1. 大佬們總結的設計模式2. 後端架構師知識手冊3. Java 和 Spring 教程4. P3C 插件 5.

本篇文章盤點的 Java 項目是由 7 位讀者推薦,這些 GitHub 項目都是 Star 20k +,包含 Java 教程、學習手冊、實用插件、工具等等:

1. 大佬們總結的設計模式

2. 後端架構師知識手冊

3. Java 和 Spring 教程

4. P3C 插件

5. Guava 工具庫

6. cat 實時應用監控平台

7. 即時通訊系統

01 設計模式

設計模式是程式設計師在設計應用程式或系統時用來解決常見問題的最佳形式化實踐,設計模式可以通過提供經過測試的,經過驗證的開發範例來加快開發過程。

該開源項目中的設計模式方案是由開源社區中經驗豐富的程式設計師和架構師開發的,是非常棒的設計模型學習資料。

www.github.com/iluwatar/java-design-patterns

02 後端架構師技術圖譜

這個接近 55k 的 Star 的開源項目,是後端架構師技術圖片,內容包括:數據結構、常用算法、並發、作業系統、設計模式、運維 & 統計 & 技術支持、中間件、網絡、資料庫、搜尋引擎、性能、大數據、安全、常用開源框架、分布式設計、設計思想 & 開發模式、項目管理、通用業務術語、技術趨勢、政策、法規、架構師素質、團隊管理、資訊、技術資源等。

www.github.com/xingshaocheng/architect-awesome

03 Java 和 Spring 教程

該跨域項目是一系列簡潔的教程組成 ,每個教程都涵蓋 Java 生態系統中一個單獨且定義明確的開發領域。當然,其中一個重點是 Spring 框架 - Spring、Spring Boot 和 Spring Security。除了 Spring 之外,這裡的模塊還涵蓋了 Java 的許多方面。

www.github.com/eugenp/tutorials

04 P3C插件

2017年,阿里官方公布《阿里巴巴 Java 開發手冊》,這本 Java 代碼規範標準手冊倍受業界關注,很多人甚至希望能儘快在自己的團隊推行起來,這樣大家有了一套共同的開發準則,這本手冊可以後台回復「手冊」獲取。

為了讓開發者更加方便、快速的將規範推動並實行起來,阿里巴巴基於手冊內容,研發了一套自動化的 IDE 檢測插件(IDEA、Eclipse)。

www.github.com/alibaba/p3c

該插件在掃描代碼後,將不符合《手冊》的代碼按 Blocker/Critical/Major 三個等級顯示在下方,甚至在 IDEA 上,還基於 Inspection 機制提供了實時檢測功能,編寫代碼的同時也能快速發現問題所在。

以 IDEA 為例,在搜索框輸入 alibaba 即可看到 Alibaba Java Code Guidelines 插件,點擊 Install 進行安裝,然後重啟 IDE 生效。

05 Guava工具庫

Guava工程包含了若干被 Google 的 Java 項目廣泛依賴 的核心庫,例如:集合 [collections] 、緩存 [caching] 、原生類型支持 [primitives support] 、並發庫 [concurrency libraries] 、通用註解 [common annotations] 、字符串處理 [string processing] 、I/O 等等。這些工具每天都在被 Google 的工程師應用在產品服務中。

www.github.com/Google/guava

06 cat 實時應用監控平台

CAT 作為服務端項目基礎組件,提供了 Java, C/C++, Node.js, Python, Go 等多語言客戶端,已經在美團點評的基礎架構中間件框架(MVC框架,RPC框架,資料庫框架,緩存框架等,消息隊列,配置系統等)深度集成,為美團點評各業務線提供系統豐富的性能指標、健康狀況、實時告警等。

www.github.com/dianping/cat

07 即時通訊系統

CIM 一款面向開發者的 IM (即時通訊) 系統;同時提供了一些組件幫助開發者構建一款屬於自己可水平擴展的 IM 。

www.github.com/crossoverJie/cim

藉助 CIM 你可以實現以下需求:

  • IM 即時通訊系統。

  • 適用於 APP 的消息推送中間件。

  • IOT 海量連接場景中的消息透傳中間件。

關鍵字: