| 包/模塊 | 必會核心類/接口 | 實戰關鍵點 |
| java.lang | String/StringBuilder、Object、Class、Enum、Thread、StackWalker、ProcessHandle | 字符串拼接性能、對象頭佈局、類加載機制、虛擬線程 |
| java.util | Collection/List/Set/Map/Queue、Stream、Optional、Comparator、Collections、Arrays | 集合選型、Stream 並行流陷阱、Optional 鏈式調用、比較器鏈 |
| java.util.concurrent | ExecutorService、CompletableFuture、ConcurrentHashMap、LongAdder、Semaphore、CountDownLatch、Phaser、ThreadLocal、VirtualThreadPerTaskExecutor | 線程池參數調優、異步編排、無鎖數據結構、虛擬線程調度 |
| java.io / java.nio | InputStream/OutputStream、Reader/Writer、Files/Paths、ByteBuffer、Channel、Selector、FileSystem、MemorySegment (Foreign Memory) | NIO 零拷貝、直接內存、文件鎖、異步文件 IO、FFI 互操作 |
| java.time | Instant/LocalDateTime/ZonedDateTime、Duration/Period、DateTimeFormatter、ChronoUnit | 時區處理、不可變性、格式化解析、期間計算 |
| java.net.http | HttpClient、HttpRequest、HttpResponse、WebSocket | HTTP/2、異步請求、連接池、響應體處理 |
| java.sql / javax.sql | DataSource、Connection、PreparedStatement、ResultSet、RowSet、HikariCP | 連接池調優、事務隔離級別、批量操作、防注入 |
| java.security | MessageDigest、Signature、Cipher、KeyStore、PKIX、Provider、SecurityManager | 加密選型、證書鏈驗證、安全編碼規範 |
五、構建與依賴管理:工程化基石
- Maven:生命周期、依賴傳遞/調解/排除、Profile、多模塊、插件開發、BOM 管理
- Gradle:DSL、任務圖、增量構建、配置緩存、約定插件、版本目錄、Composite Build
- 依賴治理:dependencyManagement、強制版本、安全掃描、License 合規、SBOM 生成
六、測試與質量保障:信心來源
| 層級 | 框架/工具 | 核心實踐 |
| 單元測試 | JUnit 5、AssertJ、Mockito、Testcontainers | 參數化測試、嵌套測試、Mock/Stub 区分、切片測試、測試金字塔 |
| 集成測試 | Spring Boot Test、Testcontainers、WireMock、RestAssured | 真實中間件、契約測試、消費者驅動契約 |
| 性能測試 | JMH、Gatling、k6、JMeter | 微基準測試、負載模型、吞吐/延遲百分位 |
| 靜態分析 | SonarQube、SpotBugs、PMD、Checkstyle、Error Prone | 質量門禁、規則定製、CI 集成 |
| 代碼覆蓋率 | JaCoCo | 行/分支覆蓋、排除生成代碼、門檻設置 |
七、故障診斷與性能調優:解決疑難雜症
- JVM 內存模型:堆/元空間/直接內存/線程棧、GC 根、對象佈局、壓縮指針
- GC 算法與調優:G1/ZGC/Shenandoah、年輕代/老年代、混合 GC、停頓時間目標、分配速率
- 工具鏈:JFR/JMC、Arthas、Async Profiler、jcmd、HeapDump 分析(MAT/JVisualVM)
- 常見問題排查:OOM(堆/元空間/直接內存/線程)、CPU 高(死循環/頻繁 GC/鎖競爭)、死鎖、響應慢(鎖/IO/GC/鎖升級)、類加載器洩漏
八、面向對象設計與架構思維:從寫代碼到做設計
- SOLID 原則:單一職責、開閉、里氏替換、接口隔離、依賴倒置
- 領域驅動設計 (DDD):實體/值對象、聚合根、領域事件、限界上下文、防腐層、倉庫/工廠
- 架構模式:分層、六邊形/洋蔥/整潔架構、CQRS、事件溯源、Saga 模式
- 微服務治理:服務發現、配置中心、網關、熔斷限流、分布式追蹤、鏈路治理
- 數據一致性:本地事務、2PC/3PC、TCC、Saga、最終一致性、冪等設計
九、編碼規範與工程文化:專業主義的體現
- 命名規範:Google Java Style / Alibaba Java Development Manual
- 代碼審查:PR 模板、Checklist、關鍵路徑必審、知識傳遞
- 文檔驅動:ADR(架構決策記錄)、API 文檔、運行手冊、故障復盤
- CI/CD:流水線階段、質量門禁、自動化部署、灰度發布、回滾機制
十、技術視野與持續學習:保持競爭力
| 領域 | 必懂項目/技術 | 深入方向 |
| 框架生態 | Spring Boot 3、Spring Cloud 2023、MyBatis-Plus、Redis、Kafka、Elasticsearch | 源碼原理、擴展點、最佳實踐 |
| 容器雲原生 | Docker、Kubernetes、Helm、Istio、Prometheus/Grafana、OpenTelemetry | Operator 開發、Service Mesh 治理、FinOps |
| 數據庫 | MySQL/PostgreSQL、索引優化、鎖機制、分庫分表、NewSQL (TiDB/OceanBase) | HTAP、分布式事務、向量檢索 |
| 前沿技術 | GraalVM Native Image、WebAssembly、Rust/Java 互操作、AI/ML 集成 (LangChain4j) | 原生編譯優化、多語言互操作、大模型應用開發 |
總結:成長階段里程碑
- 入門 (0-1 年):語法熟練、API 常用類、IDE 基礎、Maven 基礎、單元測試、Git 流程
- 進階 (1-3 年):併發編程、JVM 原理、Spring 生態、設計模式、SQL 優化、Linux 基礎、CI/CD
- 高級 (3-5 年):架構設計、性能調優、故障診斷、DDD、微服務治理、技術選型、團隊技術推廣
- 專家/架構師 (5+ 年):技術戰略、跨團隊協作、開源貢獻、行業標準制定、前沿技術落地、人才培養
技術廣度決定生存空間,技術深度決定不可替代性。
保持好奇,持續輸出,享受解決難題的過程。
- 上一篇文章: Java vs .NET:新手技術選型深度思考指南
- 下一篇文章: Java this 關鍵字完全指南:三大核心用法與最佳實踐
Copyright ©
程式碼之家 All Rights Reserved