第一章 運行原理

1.1 Lua的初步瞭解
  • Lua的定義

Lua程序設計語言是一個簡單 的、輕量級的、可擴展的腳本語言。

  • Lua的用途

Lua的目標是成爲一個很容易嵌入 其它語言中使用的語言。很多應用程序使用LUA作爲自己的嵌入式腳本語言,以此來實現可配置性、可擴展性。這其中包括著名遊戲魔獸世界,以及大話2,大話3等。

  • lua的特有特徵

1)可擴展性:Lua被設計爲易於擴展的,可通過Lua代碼或者c代碼擴展,Lua的很多功能都是通過外部庫來擴展的。Lua很容易與c/c++,等語言接口。

2)簡單:Lua本身簡單,小巧;內容少但功能強大,這使得Lua易於學習,很容易實現一些小的應用。

3)高效率:Lua有很高的執行效率,統計表明Lua是目前平均效率最高的腳本語言。

4)與平臺無關:Lua幾乎可以運行在所有聽過的系統上,PlayStationII , Mac OS-9 and OS X, MS-DOS, 及所有的windows和Unix。

  • Lua的優勢

a)Lua在這三種語言中是運行時速度最快而且佔內在最少的。/c++,等語言接口。

b)集成Lua只會增加極少的內存佔用率。

c)Lua的C API有着完備着文檔和很好的例子,可以容易地通過C集成在軟件裏。

  • Lua的不足 儘管Lua的文檔已經增進不少,但仍然有所不足。

²  三種語言中,Lua可能是文檔最少的,因爲代碼中極少註釋,這也增加了學習的難度。另外,對Lua的本質也沒有什麼介紹。

²  Lua內建的功能很少,並沒有對創建大型的複雜應用程序提供足夠支持。

Lua應該使用更好的垃圾收集機制,Lua現在的GC仍然使用非常簡單而且傳統的“標記和清除”方式。

1.2 遊戲中Lua的使用
考慮到目前公司多款遊戲均使用Action做爲遊戲腳本的支持,並且是在Action的基礎上導出使用的

          

1.3 從SQL到LUA的轉變(以下先大致瞭解下)

   (1)Lua取代了sql中action表大量的邏輯操作,將函數通過action連接到lua腳本中來實現。

         

原來的Npc使用SQL邏輯:

         

現在的Npc使用LUA的邏輯:

         

將所有npc都接入這一條模板接口中,在lua中配置不同的npc數據。

   (2)使用中能發現 SQL與LUA代碼的區別

         

Ps:特別強調,當大家初次寫LUA代碼時,總是容易帶入SQL的編寫思路,這時,請回頭來看看他們的區別!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章