分裂的 Lua 世界
Lua 不是一個主流的語言,不過還蠻常見的,主要用於遊戲引擎和其他軟體的腳本語言。本文的目的在說明 Lua 的特性及這些特性對 Lua 社群的影響。 繼續閱讀
建置 Lua 開發環境
前言 由於 Lua 是內嵌語言,如果讀者使用 Corona SDK 或其他的遊戲引擎的話,這些遊戲引擎就會內嵌 Lua 直譯器,不需另外安裝。本文以讀者要學習 Lua 語法為出發點,介紹 繼續閱讀
變數 (Variable) 和資料型別 (Data Type)
在本文中,我們介紹幾個 Lua 程式的基本概念,包括變數、資料型別等。 繼續閱讀
使用運算子 (Operator)
在程式設計中,運算子 (operator) 多使用符號來撰寫,較少使用文字。由於運算子通常無法再化簡,我們將運算子視為該程式語言的基本指令,使用運算子用組合出更複雜的功能。本文介紹 Lua 可用的運算子。 繼續閱讀
使用控制結構 (Control Structure) 改變程式運行過程
在預設情形下,程式碼由上往下依序執行。控制結構 (control structure) 用於改變程式進行的順序。本文介紹 Lua 可用的控制結構。 繼續閱讀
使用表 (Table)
表 (table) 是 Lua 唯一的資料結構,在 Lua 內部的實作上,表帶有雜湊表 (hash table) 和陣列 (array) 兩種資料結構,Lua 會視需求自動呼叫適合的結構。對使用者來說,不需要去區分 繼續閱讀
撰寫和使用函式 (Function)
函式 (function) 將某段程式碼區塊包裝起來,並給予命名,該程式碼區塊就成為一個有意義的實體。函式可以重覆再利用,也是物件導向和模組的基礎。本文介紹函式本 繼續閱讀
撰寫函數式程式 (Functional Programming)
函數式程式 (functional programming) 的前提在於函式是第一階物件 (first-class objects),簡單地說,函式也可以是值 (value)。在此基礎上,函式可以傳入另一個函式做為參 繼續閱讀
撰寫基於物件的 (object-based) 程式
前言 Lua 的物件系統 (object system) 是以原型 (prototype) 為基礎,和一般 Java 或 Python 等以類別 (class) 為基礎的物件系統略為不同。 因 Lua 的物件系統較為原始 (primitive),程式設計 繼續閱讀
多型 (Polymorphism) 相關的議題
前言 由於 Lua 是動態型別語言,不需要像 Java 等語言,利用子型別 (subtyping) 來達到多型的效果,使用內建的語法機制即可達到相同的效果。 在本文中,我們從 Lua 的角度來看 繼續閱讀