预购商品
书目分类
特别推荐
Lua是一種可嵌入、高效、輕量級、功能強大的指令稿語言,主要應用在遊戲領域。另外,基於Nginx的OpenResty也是使用Lua編寫指令稿的,很多伺服器(如Redis)也支援使用Lua編寫指令稿。 作為一門以純C程式碼編寫的專案,Lua程式碼優美、結構組織緊湊,是經典的C語言專案。 本書討論Lua語言的設計原理,架構如下: ■ 第一部分說明Lua 中的資料結構,如透用資料是如何表示的,Lua 的字串以及表類型的實現原理。 ■ 第二部分是本書最重要的部分,主要討論Lua 虛擬機器的實現,分類說明Lua 虛擬機器中的一些重點指令。 ■ 第三部分的內容比較雜,討論垃圾回收、模組實現、熱更新、程式碼協同等的實現原理。 本書特色 √ 揭示Lua實現原理 √ 經典的純C語言專案分析 √ 一線開發人員傾力打造
前 言 Chapter01 概述 1.1 前世今生 1.2 原始程式組織 1.3 Lua 虛擬機工作流程 Chapter02 Lua 中的資料類型 2.1 C 語言中實現通用資料結構的一般做法 2.2 Lua 通用資料結構的實現 Chapter03 字串 3.1 概述 3.2 字串實現 Chapter04 表 4.1 資料結構 4.2 操作演算法 Chapter05 Lua 虛擬機器 5.1 Lua 執行過程概述 5.2 資料結構與堆疊 5.3 指令的解析 5.4 指令格式 5.5 指令的執行 5.6 偵錯工具 Chapter06 指令的解析與執行 6.1 Lua 詞法 6.2 設定值類別指令 6.3 表相關的操作指令 6.4 函數相關的操作指令 6.5 數值計算類別指令 6.6 關係邏輯類別指令 6.7 循環類別指令 Chapter07 GC 演算法 7.1 原理 7.2 資料結構 7.3 實際流程 7.4 進度控制 Chapter08 環境與模組 8.1 環境相關的變數 8.2 模組 Chapter09 偵錯器工作原理 9.1 鉤子功能 9.2 獲得目前程式資訊 9.3 列印變數 9.4 檢視檔案內容 9.5 中斷點的增加 9.6 檢視目前堆疊資訊 9.7 step 和next 指令的實現 Chapter10 例外處理 10.1 原理 10.2 Lua 實現 Chapter11 程式碼協同 11.1 概念 11.2 相關的API 11.3 實現 AppendixA 參考資料
作者簡介 Codedump 從事互聯網後端服務開發工作。在網路遊戲開發工作期間接觸到使用C 編寫服務核心引擎,和使用Lua指令稿編寫遊戲邏輯的技術組合後,對Lua產生濃厚的興趣開始研究,陸續發佈於網路。 個人博客:www.codedump.info。
客服公告
热门活动
订阅电子报