熟悉至少一種其他程式設計語言。Programming 經驗。或者,如果您熟悉其他腳本語言,這將使您更容易理解 Lua。
Lua 是一種易於使用的腳本語言,在不同的產品中用作嵌入式外掛程式/擴展語言。例如,它是nmap和wireshark等網路應用程式的嵌入式腳本語言,也可以在魔獸世界、Orbiter 和其他遊戲中找到腳本語言。
Lua 也可以作為獨立語言使用。它是一種輕量級、多範式的程式設計語言,因此該課程教授各種概念,學生會發現這些概念在軟體工程的其他領域也很有用。
本課程涵蓋了關於 Lua 的所有資訊。我們從基本的程式設計結構開始構建,學習高級技術,最後討論將 Lua 嵌入到其他程式設計語言中,以及將其他程式設計語言嵌入到 Lua 中。該課程包含大量程式設計練習,以便新手可以從頭開始熟練掌握這門語言。
Lua 簡介
- 一點歷史
- Lua的目標、特點和非目標
- Lua 文件和教程的資源
- 安裝 Lua 解釋器
- 設置和使用 LuaRocks
基本語法和語義
- 標識碼
- 評論、阻止評論
- 全域變數和嚴格性的實施
- 局部變數
- 獨立程式、程序參數
- 編譯單元、塊、表達式、分號
數據類型和數據結構
- 基本類型:nil、boolean、number、string
- 物件類型:函數、用戶數據、線程、表
- 引用/物件與基本值
- Lua 中表格的重要性
介紹桌子及其多功能性
- 表作為關聯陣列
- 表作為數位數位、序列
基本控制結構
- if then elseelse 結束
- while 迴圈
- 重複迴圈
- 簡單的 for 迴圈
錯誤處理
- 返回值與異常
- 將返回值轉換為異常
- 將異常轉換為返回值
- 錯誤級別
示例程式
- 多項式求值
- 廣度優先搜索
- 其他練習
有關函數的更多資訊
- 命名參數
- 面向物件的調用
- 閉包
- 咖喱
- 尾部呼叫
- 多次分配和返回
- 瓦拉格斯
反覆運算器和協程
- 泛型 for 迴圈
- 無狀態反覆運算器與有狀態反覆運算器
- 反覆運算器和協程之間的差異
元表和元方法
- 設置範例
- __tostring元方法
- 算術元方法
- __index、__newindex元方法
- __len元方法
模組和套件
- 使用模組
- 創建模組
- 將模組組織到包中
高級表
- 佇列和堆疊的表
- 描述圖形的表格
- 矩陣作為表
- 以表格形式鏈接的鏈表
- 字串緩衝區
通過示例的元表
- 代理
- 唯讀
- 記憶
- 帶記憶的動態程式設計
- 斐波那契例子
環境
- 全域變數與環境的關係
- 自由變數
- _ENV 表和 _G 表
有關模組的更多資訊
- 創建模組的不同方法
- 更改行為的模組
- 模組初始化和參數
- 使用環境實現安全模組
高級反覆運算器和協程
- 生產者、消費者、篩檢程式
- 包裝協程以獲取反覆運算器
- 鏈表的無狀態反覆運算器
為生態系統做貢獻
- 將包裹上傳到 MoonRocks
Lua 中的函數範式
- map 函數
- 縮小/摺疊功能
面向物件Programming
- 不同的 OOP 方法
- 不同的繼承方法
- 例子
Lua 標準庫演練
彙編
- 彙編
- 評估
- 與環境的關係
- 二進位塊
垃圾回收
- 弱表
- 終結器,__gc元方法
Lua 位元組碼和虛擬機
- 從原始碼生成位元組碼
- 讀取和分析位元組碼
- 快速流覽 Lua VM 的原始程式碼
C 模組
- 從 Lua 調用 C
- Search C 模組的路徑和載入
從 C 呼叫 Lua
- 堆疊
- 錯誤處理
- 延續
處理 C 中的 Lua 值和類型
- 陣 列
- 字串
- 用戶數據
- 元表
- 面向物件的調用
- 輕量級用戶數據
記憶體管理
- 25天
- 氣相色譜 API
Lua 中的線程
- 協程與線程
- 真正的多線程和 Lua 狀態
United Arab Emirates - Comprehensive Lua
Saudi Arabia - Comprehensive Lua
South Africa - Comprehensive Lua
Brasil - Compreendendo a linguagem de programação Lua
Österreich - Lua Programmierung
Deutschland - Lua Programmierung
Czech Republic - Comprehensive Lua
Magyarország - Comprehensive Lua
Luxembourg - Comprehensive Lua
Portugal - Compreendendo a linguagem de programação Lua
New Zealand - Comprehensive Lua
Philippines - Comprehensive Lua
Costa Rica - Comprehensive Lua
United Kingdom - Comprehensive Lua
South Korea - Comprehensive Lua