Move 基礎 (Move Basics)
本章涵蓋 Move 語言的基礎:語法、型別系統,以及每個 Move 程式所建立的基礎概念。本章聚焦於語言本身,大致上先擱置區塊鏈的部分——這裡的內容適用於任何 Move 程式,而 storage 與 Sui 特有的功能,將緊接在後從物件模型 (Object Model) 章節開始介紹。
各小節彼此建立在前一節之上,建議依序閱讀:
- 程式碼如何組織:模組 (modules)、註解 (comments)、 基本型別 (primitive types)、address 型別、 運算式 (expressions),以及函式 (functions)。
- 定義自訂型別:結構 (structs),以及控制型別的值能做什麼的 能力系統 (ability system)——從 drop 能力開始。
- 重用既有程式碼:匯入 (imports),以及 標準函式庫 (Standard Library) 及其核心型別——vector、 Option,以及 String。
- 撰寫邏輯:控制流程 (control flow)、列舉與模式比對 (enums with pattern matching)、結構方法 (struct methods),以及 可見性修飾詞 (visibility modifiers)。
- Move 安全機制的核心:所有權與作用域 (ownership and scope)、 copy 能力、常數 (constants) 與 中止執行 (aborting execution),以及參考 (references)。
- 抽象化工具:泛型 (generics)、巨集函式 (macro functions)、 內部許可 (internal permit)、型別反射 (type reflection),最後是 測試 (testing)。
本章的每個程式碼範例都來自可編譯、經過測試的套件。大部分範例是放在測試函式內的節錄,因此你可以將其中任何一個複製到 Hello World 章節建立的套件中,並用 sui move test 執行它們。