聯繫我們

課程簡介

Lua 入門

  • 簡述歷史
  • Lua 的目標、特性及非目標
  • Lua 文檔和教程資源
  • 安裝 Lua 解釋器
  • 設置和使用 LuaRocks

基本語法和語義

  • 標識符
  • 註釋、塊註釋
  • 全局變量和強制嚴格模式
  • 局部變量
  • 獨立程序、程序參數
  • 編譯單元、塊、表達式、分號

數據類型和數據結構

  • 基本類型:nil、boolean、number、string
  • 對象類型:function、userdata、thread、table
  • 引用/對象 vs 基本值
  • Lua 中表格的重要性

表格及其多功能性簡介

  • 作為關聯數組的表格
  • 作為數組、序列的表格

基本控制結構

  • if then elseif else end
  • while 循環
  • repeat 循環
  • 簡單 for 循環

錯誤處理

  • 返回值 vs 異常
  • 將返回值轉為異常
  • 將異常轉為返回值
  • 錯誤級別

示例程序

  • 多項式求值
  • 廣度優先搜索
  • 附加練習

更多關於函數

  • 命名參數
  • 對象導向調用
  • 閉包
  • 柯里化
  • 尾調用
  • 多重賦值和返回
  • 可變參數

迭代器和協程

  • 通用 for 循環
  • 無狀態 vs 有狀態迭代器
  • 迭代器和協程的區別

元表和方法

  • set 示例
  • __tostring 方法
  • 算術方法
  • __index、__newindex 方法
  • __len 方法

模組和包

  • 使用模組
  • 創建模組
  • 將模組組織為包

對象導向編程

  • Lua 中 OOP 的構件
  • 示例

更進階語言特性的討論

  • 弱表格
  • 终结器
  • 編譯、求值、加載

最低要求

熟悉至少另一種編程語言。具有編程經驗。選修的熟悉其他腳本語言經驗將有助於理解 Lua。

 14 小時

課程分類