Lua代码规范

本文为作者原创,转载请注明出处:https://www.cnblogs.com/zhaoqingqing/p/6406404.html



以下规范,是在Unity中使用Lua做为开发语言,仅供参考。

1.格式规范#

1、 lua文件名统一小写,中间一律不加下划线分割

2、 类名首字母大写,多个词组成的类名,每个词的首字母大写,中间一律不加下划线分割

文件名是否使用下划线分隔,仅供参考

3、 方法名首字母大写,多个词组成的方法名与类名规则相同

4、 类的成员变量以m_开头

5、 禁止使用全局变量,如果是通用的变量可以统一放到一个表里面

6、 换行,函数名之后换行,then、do、end之后换行,代码换行就不说了

7、 缩进,缩进是标准的4空格tab缩进,

8、类的方法定义如下示例,使用function 类名:方法名(参数列表) 的方式

示例

复制代码
--HostPlayer
--初始化用户
function HostPlayer:Init(id, sex, xxx, yyy)
    
    self.m_Id = id;           --玩家ID
    self.m_Sex = sex;          --玩家性别
    self.m_Xxx = xxx;          --
    self.m_Yyyy = yyy;         --
end
复制代码

2.代码效率规范#

1、 不要在update里使用GetCompont、GetComponentInChildren

2、 不要在Mono脚本 update使用foreach(Unity 5.5版本以下)

3、 animationmanager:GetCurrentStateInfo() 不要在Update里调用

4、 UIListItem_AAA:GetLable("123")等 用UIListItem_AAA.Controls["123"]  代替

5、  Input.GetAxis("Vertical") 用 LuaHelper.GetAxis(AxisType.Vertical)代替

6、 Application.platform == UnityEngine.RuntimePlatform.WindowsEditor 用LuaHelper.IsWindowsEditor() 代替

7、 UICamera.isOverUI(实现有GetComponent) 应该在事件触发之后判断 ,不要在Update里直接调用。

8、 不要在Update里改变UI控件的值如UILable_AAA.text = "123",UISprite_BBB.spriteName = "123",要在值变化是refresh页面

作者:赵青青   一名在【网易游戏】做游戏开发的程序员,擅长Unity3D,游戏开发,.NET等领域。
本文版权归作者和博客园共有,欢迎转载,转载之后请务必在文章明显位置标出原文链接和作者,谢谢。
如果本文对您有帮助,请点击【推荐】您的赞赏将鼓励我继续创作!想跟我一起进步么?那就【关注】我吧。
posted @   赵青青  阅读(2024)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 易语言 —— 开山篇
· Trae初体验
点击右上角即可分享
微信分享提示
CONTENTS