【转】Lua编程规范

 Lua编程规范 

1. 版本和版权问题

版权和版本的声明位于定义文件的开头(参见示例1-1),主要内容有:

1)版本号 <主版本号><次版本号><修订号>

2)文件名称

3)功能描述

4)创建人

5)创建时间

 

图1-1 版本信息示例

2. 排版

2.1 空格

程序块间要采用缩进风格编写,缩进空格数为Tab。连接运算符“..”两边要有空格。如:a .. b

2.2 空行

相对独立的程序块之间,如函数块之后必须加空行。(注:空行不占内存)如下:两个函数之间必须要加空行。

function distance(destX,destY,destZ,srcX,srcY,srcZ)

return math.sqrt((destX-srcX)^2+(destY-srcY)^2+(destZ-srcZ)^2)

end

function checkDistance(destX,destY,destZ,srcX,srcY,srcZ)

iw.log(“ssss”)

end

2.3 代码行

较长的语句要分成多行书写,每行代码不超过70字符,一行代码最好只做一件事情,比如只写一个语句,或只定义一个变量,这样的代码容易阅读,方便注释。

if…then…return…end要分行写,iffor等语句自占一行,执行语句不得紧跟其后。

2.4 比较规范

关系运算符两边最好用空格。

1nil : a == nil

2int/string: a == 163/ a == “Wingszero”

3Boolean: if a/if not a 

4)杜绝比较不同类型的对象

3. 注释

3.1 注释符号

     单行注释:--

 多行注释:--[[ --]]

3.2注释量

一般情况下,源程序有效注释量必须在20%以上。

3.3注释区域

注释通常用于以下:

1)版本、版权声明;

2)函数接口说明;

3)重要的代码行或段落提示。

注释的位置应与被描述的代码相邻,可以放在代码的上方或右方,不可放在下方。注释与其下面的代码用空行分隔开来。如图3-1

 

图3-1

注意:注释的原则是有助于对程序的阅读理解,注释也不宜太多。注释可以是中文或英文,但最好用英文,防止产生乱码问题。

3.4 全局变量注释

全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数存取它以及存取它时的注意事项等的说明。

4. 命名规范

(1) 变量:驼峰法,egplayerName变量的命名要见名知意,便于阅读和修改。

2)常量:大写加下划线 egKIND_PET_FOOD

3)函数:和变量一致,egfunction checkTaskChainStatus()

4)模块:小写加下划线:egitem_factory_lua

5. 其他规范

1table的数据较多时考虑用如下形式增强可读性:

Local a = {

[1] = 108001

[2] = 108002

[3] = 108003

}

2)尽量使用local变量而非global变量

3)被多次读取的global变量,应提取出来放到local变量中

原文地址:https://www.cnblogs.com/wuling129/p/4692394.html