聯繫我們

課程簡介

Groovy 介紹

  • Apache Groovy 概觀
  • Groovy 的歷史與演進
  • Groovy 與 Java 虛擬機器(JVM)的關係
  • Groovy 作為腳本語言與程式語言的角色
  • Groovy 的常見使用情境
  • Groovy 在基於 Java 專案中的應用
  • 搭配 Java 使用 Groovy 的優勢
  • 範例應用程式簡介

Groovy 功能概觀

  • 動態型別與可選的靜態型別
  • Groovy 的腳本能力
  • 精簡語法與語言增強功能
  • 閉包(Closures)與函數式程式設計
  • Groovy 集合與增強的 API
  • 運算子重載(Operator overloading)
  • 字串插值(String interpolation)
  • 安全導航與 Elvis 運算子
  • 特定領域語言(DSL)開發
  • 元程式設計能力
  • Groovy 開發套件(GDK)

建置開發環境

  • 安裝與設定 Groovy
  • 操作 Groovy 發行版本
  • 從命令列使用 Groovy
  • 執行 Groovy 腳本
  • 設定 IDE(整合式開發環境)
  • 建立 Groovy 專案
  • 管理依賴套件
  • 將 Groovy 整合至 Java 專案
  • 為容器化環境設定開發環境

撰寫您的第一個 Groovy 應用程式

  • 建立基本的 Groovy 腳本
  • 理解 Groovy 腳本結構
  • 執行 Groovy 應用程式
  • 使用 println 語句
  • 變數操作
  • 定義方法
  • 添加註解與文件說明
  • 建構簡單的範例應用程式
  • 編譯 Groovy 代碼

熟悉 Groovy 語法

  • Groovy 語句與表達式
  • 分號與可選語法元素
  • 變數與常數
  • 動態型別與明確型別
  • 字串字面量與插值
  • 單行與多行字串
  • 運算子與表達式
  • Groovy 運算子與簡寫方式
  • Null 處理
  • 安全導航
  • Elvis 運算子
  • 多重指派

使用 Groovy 資料型別與集合

  • 原始型別與物件型別
  • 數字與數值運算
  • 字串與字符
  • 布林值
  • 日期與時間相關值
  • 清單(Lists)
  • 映射(Maps)
  • 集合(Sets)
  • 範圍(Ranges)
  • 集合迭代
  • 集合轉換
  • 集合過濾與搜尋
  • 資料排序與分組
  • Groovy 集合方法

使用 Groovy 閉包(Closures)

  • 理解閉包概念
  • 閉包語法
  • 閉包參數
  • 隱式閉包參數
  • 呼叫閉包
  • 將閉包作為變數
  • 將閉包傳遞給方法
  • 從方法傳回閉包
  • 閉包與集合的互動
  • 使用閉包進行過濾與轉換
  • 作用域與變數捕獲
  • 用於函數式程式設計的閉包
  • 實務中的閉包模式

使用 Groovy 控制結構來控制程式流程

  • 條件判斷語句
  • ifelse
  • 巢狀條件判斷
  • switch 語句
  • 迴圈與迭代
  • forwhiledo-while
  • 迴圈中的範圍使用
  • 使用閉包進行迭代
  • breakcontinue
  • 例外處理
  • trycatchfinally
  • 拋出自訂例外
  • Groovy 特有的控制流程功能

在應用程式中實作物件導向程式設計(OOP)

  • 定義 Groovy 類別
  • 屬性與欄位
  • 建構子(Constructors)
  • 方法(Methods)
  • 封裝(Encapsulation)
  • 繼承(Inheritance)
  • 介面(Interfaces)
  • 抽象類別
  • 多態(Polymorphism)
  • 方法重寫(Method overriding)
  • 方法重載(Method overloading)
  • Groovy 的 Getters 與 Setters
  • Traits(特徵)
  • 列舉型別(Enums)
  • 為範例應用程式建立領域模型

執行時元程式設計與編譯時元程式設計

  • Groovy 元程式設計入門
  • 動態方法呼叫
  • Expando 物件
  • 執行時的方法與屬性操作
  • 類別別(Categories)與擴展
  • MetaClass
  • 動態添加方法
  • 攔截方法呼叫
  • 編譯時轉換(Transformations)
  • 常見的 AST 轉換
  • 負責任地使用元程式設計
  • 元程式設計實務範例

使用建構器(Builders)

  • 建構器模式(Builder pattern)簡介
  • Groovy 建構器及其用途
  • 建立階層結構
  • XML 建構器
  • JSON 建構器
  • HTML 與標記生成
  • 設定建構器輸出
  • 結合閉包使用建構器
  • 建立自訂建構器
  • 在特定領域語言(DSL)中應用建構器

使用 Groovy 存取資料庫

  • 資料庫連線概念
  • 將 Groovy 應用程式連線至資料庫
  • JDBC 與 Groovy 資料庫 API
  • 設定資料庫連線
  • 執行 SQL 查詢
  • 讀取查詢結果
  • 插入、更新與刪除資料
  • 參數化查詢
  • 交易(Transactions)
  • 處理資料庫例外
  • 使用 Groovy SQL
  • 為範例應用程式建置資料庫功能

從 Groovy 呼叫 Java

  • Groovy 與 Java 的互操作性
  • 在 Groovy 中使用 Java 類別
  • 呼叫 Java 方法
  • 使用 Java 函式庫
  • 使用 Java 集合
  • 處理 Java 例外
  • Groovy 語法與 Java 語法比較
  • 從 Java 呼叫 Groovy 代碼
  • 混合使用 Groovy 與 Java 原始碼檔案
  • 將 Groovy 整合至現有的 Java 應用程式
  • 互操作性最佳實務

連接 REST 服務與應用程式

  • REST API 簡介
  • Groovy 應用程式的 HTTP 概念
  • 發送 HTTP 請求
  • 處理 GET、POST、PUT 與 DELETE 操作
  • 處理請求參數與標頭
  • 處理 JSON 回應
  • 建置 JSON 請求主體
  • 處理身份驗證
  • 管理 HTTP 錯誤
  • 使用外部 REST 服務
  • 將 REST 功能整合至範例應用程式

使用 GDK

  • Groovy 開發套件(GDK)簡介
  • 增強的 Java API
  • 字串操作
  • 增強的集合
  • 檔案與目錄操作
  • 檔案讀取與寫入
  • 處理資料流(Streams)
  • 處理 XML
  • 處理 JSON
  • 日期與時間操作
  • 工具方法與便利性 API
  • 選擇適當的 GDK 功能

對 Groovy 應用程式進行單元測試

  • Groovy 應用程式測試入門
  • 測試驅動開發(TDD)概念
  • 撰寫單元測試
  • 使用測試框架
  • 結構化測試類別
  • 斷言(Assertions)
  • 測試類別與方法
  • 測試閉包
  • 測試例外
  • 模擬依賴項目(Mocking dependencies)
  • 資料驅動測試
  • 測試與資料庫相關的功能
  • 測試 REST 整合
  • 執行並分析測試結果

故障排除

  • 診斷 Groovy 語法錯誤
  • 除錯執行時錯誤
  • 處理編譯問題
  • 排除 Java 互操作性問題
  • 除錯閉包與集合操作
  • 調查資料庫連線問題
  • 排除 REST API 整合問題
  • 除錯元程式設計行為
  • 使用日誌與診斷工具
  • 實務故障排除演練

總結與結論

  • Groovy 語言基礎回顧
  • 語法、型別與集合回顧
  • 閉包與函數式程式設計回顧
  • 物件導向程式設計回顧
  • 元程式設計與建構器回顧
  • 資料庫與 REST 整合回顧
  • Groovy 與 Java 互操作性回顧
  • GDK 功能回顧
  • 測試實務回顧
  • 開發 Groovy 應用程式的最佳實務
  • 最終實作演練
  • 提問與討論

最低要求

  • 具備任一程式語言的程式設計經驗
 21 小時

人數


每位參與者的報價

客戶評論 (1)

即將到來的課程

課程分類