【转】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要分行写,if、for等语句自占一行,执行语句不得紧跟其后。
2.4 比较规范
关系运算符两边最好用空格。
(1)nil : a == nil
(2)int/string: a == 163/ a == “Wingszero”
(3)Boolean: 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) 变量:驼峰法,eg:playerName变量的命名要见名知意,便于阅读和修改。
(2)常量:大写加下划线 eg:KIND_PET_FOOD
(3)函数:和变量一致,eg:function checkTaskChainStatus()
(4)模块:小写加下划线:eg:item_factory_lua
5. 其他规范
(1)table的数据较多时考虑用如下形式增强可读性:
Local a = {
[1] = 108001
[2] = 108002
[3] = 108003
}
(2)尽量使用local变量而非global变量
(3)被多次读取的global变量,应提取出来放到local变量中
【转】Lua编程规范的更多相关文章
- 腾讯开源手游热更新方案,Unity3D下的Lua编程
原文:http://www.sohu.com/a/123334175_355140 作者|车雄生 编辑|木环 腾讯最近在开源方面的动作不断:先是微信跨平台基础组件Mars宣布开源,腾讯手游又于近期开源 ...
- C++编程规范和编译过程详解
前言:因为c++基础打得不牢,所以准备花点时间再学一下c++的基础知识,主要是看网易云课堂里面的免费课程,把一些知识点做个笔记记下来. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...
- Batsing的网页编程规范(HTML/CSS/JS/PHP)
特别注意!!!我这里的前端编程规范不苟同于Bootstrap的前端规范. 因为我和它的目的不同,Bootstrap规范是极简主义,甚至有些没有考虑到兼容性的问题. 我的规范是自己从编程实践中总结出来的 ...
- JAVA编程规范(下)
JAVA编程规范(下) 2016-03-27 6. 代码的格式化 6.1 对代码进行格式化时,要达到的目的 1. 通过代码分割成功能块和便于理解的代码段,使代码更容易阅读和理解: 2. ...
- JAVA 编程规范(上)
2016-03-20 J120-CHARLIEPAN JAVA 编程规范(上) 1. 应用范围 本规范应用于采用J2EE规范的项目中,所有项目中的JAVA代码(含JSP,SERVLET,JA ...
- 使Eclipse符合Java编程规范
编程规范是很重要的东西,能让团队的代码易于阅读和维护,也便于日后的功能扩展. 工欲善其事必先利其器!作为一个Java程序员,与Eclipse打交道可能是一辈子的事情.将Eclipse设置为符合公司编程 ...
- flex+AS3编程规范
flex+AS3编程规范 Flex+AS3编码规范 http://www.cnblogs.com/jiahuafu/ 1. 缩写: 尽量避免使用缩写,使用缩写时尽量和Flex保持一致.但要记住一 ...
- Python编程规范(PEP8)
Python编程规范(PEP8) 代码布局 缩进 对于每一次缩进使用4个空格.使用括号.中括号.大括号进行垂直对齐,或者缩进对齐. 制表符还是空格? 永远不要将制表符与空格混合使用.Python最常用 ...
- Python 编程规范-----转载
Python编程规范及性能优化 Ptyhon编程规范 编码 所有的 Python 脚本文件都应在文件头标上 # -*- coding:utf-8 -*- .设置编辑器,默认保存为 utf-8 格式. ...
随机推荐
- vs2010经常使用快捷键
调试快捷键 F6: 生成解决方式 Ctrl+F6: 生成当前项目 F7: 查看代码 Shift+F7: 查看窗口设计器 F5: 启动调试 Ctrl+F5: 開始运行(不调试) Shift+F5: 停止 ...
- 数据科学家:神话 & 超能力持有者
一个打破神话的季节,正在降临. 我将坦诚地揭穿人们关于数据科学家所持有的惯有看法.在下文中,我将一个一个展示这些观点,宛如将一个又一个的玻璃瓶子摔碎在墙壁上一样. 关于数据 ...
- CSS+DIV标签命名规范 搜索引擎最喜欢
搜索引擎优化(seo)有很多工作要做,其中对代码的优化是一个很关键的步骤.为了更加符合SEO的规范,下面是目前流行的CSS+DIV的命名规则: 登录条:loginBar 标志:logo 侧栏:si ...
- LightOJ 1317
Time Limit:2000MS Memory Limit:32768KB 64bit IO Format:%lld & %lluDescription You probab ...
- BZOJ 1230: [Usaco2008 Nov]lites 开关灯( 线段树 )
线段树.. --------------------------------------------------------------------------------- #include< ...
- android studio 安装与环境搭建
转摘自:http://blog.csdn.net/zhanghefu/article/details/9286123 第一章 andriod studio 安装与环境搭建 一.Android St ...
- logback自定义格式转换器
创建自定义格式转换符有两步. 首先,必须继承ClassicConverter类.ClassicConverter对象负责从ILoggingEvent 提取信息,并产生一个字符串.例如,LoggerCo ...
- poj 1664 put apples(dfs)
题目链接:http://poj.org/problem?id=1664 思路分析:数据较小,考虑深度优先搜索搜索解空间. 代码如下: #include <iostream> using n ...
- linux搭建java环境
建议使用EXCEL查看 准备文件 apache-tomcat-7.0.57.tar tomcat web容器 server-jre-7u76-linux-x64.tar java jdk java执 ...
- Linux下批量转换文件编码
find -iname "*.java" -exec enca {} + |grep -v ASCI |grep -v -i utf |awk -F':' '{print $1}' ...