感謝您提交詢問!我們的一位團隊成員將在短時間內與您聯繫。
感謝您提交預訂!我們的一位團隊成員將在短時間內與您聯繫。
課程簡介
Lua 入門
- 歷史背景
- Lua 的目標、功能與非目標
- Lua 文件與教學資源
- 安裝 Lua 直譯器
- 設定並使用 LuaRocks
基本語法與語義
- 標識符
- 註解、區塊註解
- 全域變數與嚴格模式的強制執行
- 區域變數
- 獨立程式、程式參數
- 編譯單元、程式碼塊、表達式、分號
資料型別與資料結構
- 基本型別:nil、boolean、number、string
- 物件型別:function、userdata、thread、table
- 參考/物件 vs. 基本值
- table 在 Lua 中的重要性
table 入門與多樣性
- 作為關聯式陣列的 table
- 作為數值陣列、序列的 table
基本控制結構
- if then elseif else end
- while 迴圈
- repeat 迴圈
- 簡易 for 迴圈
錯誤處理
- 傳回值 vs. 例外狀況
- 將傳回值轉換為例外狀況
- 將例外狀況轉換為傳回值
- 錯誤層級
範例程式
- 多項式求值
- 廣度優先搜尋
- 額外練習題
關於函式的更多內容
- 具名參數
- 物件導向呼叫
- 閉包
- 柯里化 (Currying)
- 尾呼叫 (Tail calls)
- 多重指派與傳回
- 可變長度參數 (Varargs)
迭代器與協程
- 通用 for 迴圈
- 無狀態 vs. 有狀態迭代器
- 迭代器與協程之間的差異
元表 (Metatables) 與元方法 (Metamethods)
- 集合範例
- __tostring 元方法
- 算術元方法
- __index、__newindex 元方法
- __len 元方法
模組與套件
- 使用模組
- 建立模組
- 將模組組織為套件
物件導向程式設計
- Lua 中 OOP 的建構要素
- 範例
進階語言功能討論
- 弱參考表 (Weak tables)
- 終結器 (Finalizers)
- 編譯、評估、載入
最低要求
至少熟悉另一種程式設計語言。具備程式設計經驗。若額外熟悉其他腳本語言,將有助於理解 Lua。
14 小時