課程大綱
這個為期 70 小時的兼讀制課程,涵蓋了一系列軟件開發的進階課題, 包括 Java 的並發編程、垃圾回收、測試驅動開發、設計模式, 消息隊列、分佈式系統、DevOps 等等。
本課程適合已有良好的編程基礎,並想提高技術水平的人士。
完成課程後,學生將掌握高級軟件開發的概念和方法論,並能夠構建高效、可擴展的分布式服務。
最重要的是,學生將有能力在頂級投行的 Java 面試中脫穎而出,獲取高薪 Offer。
測試驅動開發 (TDD) 和測試自動化
測試驅動開發簡介:學生將了解 TDD 方法、紅-綠-重構循環、以及如何編寫確保代碼質量的測試。
JUnit 框架:本節介紹 JUnit 框架、其語法以及如何使用它編寫單元測試。
測試自動化:學生將學習如何使用 Mockito 等框架為 Java 應用程序編寫自動化測試。
Java 基礎和高級編程
高級並發:本節涵蓋高級並發主題,例如鎖、信號量和原子變量。學生將學習如何編寫高效且安全的並發代碼。
垃圾收集:學生將了解 Java 垃圾收集算法、它的工作原理以及如何優化它,以獲取更好的性能。
JVM 調優:本節介紹 JVM 調優技術。此技術可用於提高 Java 應用程序的性能。學生將學習如何針對特定情況優化 JVM。
消息隊列和事件驅動架構
消息隊列簡介:學生將了解什麼是消息隊列以及它們如何在分佈式系統中應用。
使用消息隊列:本節介紹使用 RabbitMQ 和 Kafka 實現消息隊列。學生將學習如何創建生產者和消費者,以及如何處理消息排序和消息傳遞保證等常見場景。
事件驅動架構:學生將學習如何使用消息隊列設計及構建事件驅動架構。
DevOps 和 CI/CD 管道
DevOps 簡介:學生將學習 DevOps 的基本原理、它的優勢及其在軟件開發中的作用。
CI/CD 管道:學生將學習持續集成 (CI) 和持續部署 (CD) 管道的概念,以及他們如何自動化軟件開發過程。
Docker:學生將學習如何使用 Docker 在容器中創建、部署和管理應用程序,以及它如何可用於簡化軟件開發過程。
雲端微服務和分佈式系統
分佈式系統簡介:本節涵蓋分佈式系統的基礎知識,包括分佈式架構和分佈式數據庫。
微服務架構:學生將學習如何使用 Spring Boot 和其他框架設計和實現微服務架構。
常見雲端平台概述,例如 Google Cloud Platform (GCP)、Amazon Web Services (AWS) 和 Microsoft Azure。
深入了解 AWS 雲服務,包括 EC2、S3、RDS 等。
清潔代碼、重構和設計模式
整潔代碼原則:本節介紹整潔代碼的原則以及如何在 Java 編程中應用它們。學生將學習如何編寫易於閱讀、測試和維護的代碼。
重構技術:學生將學習如何識別代碼異味並重構代碼以提高其質量。
設計模式簡介:本節涵蓋 Java 編程中最常用的設計模式。學生將學習如何使用這些模式編寫可擴展和可維護的代碼。
R.S.
課程導師
擁有 18 年開發經驗的高級軟件工程師,擅長構建高吞吐量、低延遲的投資銀行系統, 令您的軟件開發技術更上一層樓
- 頂級跨國銀行軟件開發團隊總監
- 具 18 年以上的軟件工程經驗,曾任職於多家頂級投行
- 史丹福大學金融工程碩士
- Java、Python、DevOps 和交易系統方面的技術專家
常見問題
-
這個課程是為誰而設的?
本課程專為具有良好編程基礎並希望提高技術水平的人士而設。
-
這個課程的時長是多久?
這個課程共有 70 小時,每星期 1 或 2 堂。
-
完成課程後我能獲得證書嗎?
是的,您將獲得完成課程的證書。
-
課程開始前,我需要準備什麼?
您需要一台可使用互聯網的筆記本電腦。我們會提供課程中所有工具的安裝指南。
-
這門課程是在線還是面授的?
本課程提供在線及面授模式。
-
導師會提供哪方面的支援?
我們的講師可以在上課期間和課外提供支持。 我們還有一個支援團隊來回答您的任何問題。 此外,您還可以加入由同學和校友組成的學習社區。
-
如果我錯過一節課怎麼辦?
我們提供課堂錄音和筆記,因此您可以補上任何錯過的課程。