[置顶] Unity开发规范(个人习惯,仅供参考)
2016-04-07 15:10
399 查看
最近整理了一下unity里的目录使用和脚本上的一些规范,这个看个人习惯,仅供参考
按资源种类分文件夹,然后每个内部再根据自己项目模块分类
比如Scripts:
Resources根据资源加载,再来一层同样的,然后内部同样的根据自己的模块分类,至于StreamingAssert啥的同理
不会放太多东西,主要是动态加载,依项目情况而定。
变量名:命名表达意思,可以mainRole或者MainRole之类的
注释:脚本说明和变量注释都使用,方法内的注释就简单点的//就可以了
/// <summary>,这样的好处是,你鼠标放到想知道的类名或者变量上去,都会有介绍,这样在其它脚本中调用时就不用,跳过来跳过去了
字段封装:下划线开始,举例如图
方法:方法命名同变量和类名一样,然后注释的话也用///这样的好处是,调用的时候不仅知道参数是干啥的,而且知道每个参数的含义
代码块,代码块的功能时折叠代码,这样的话可以让代码看上去清爽,而且很快找到自己需要的的功能,主要就是把自己的代码包含在#region和#endregion中
这样看上去是不是很舒服,VS里怎么区分代码块不清楚,但是Mono里的侧栏这个看的就很清楚
但是mono调试和使用起来不是很方便,喜欢就是它这个DccumentOutLine不错,找起代码来方便,VS里目前不知道有没有这功能,小伙伴知道的可以知悉我
条件调试运行
有时候会方便调试,写一些快捷的调试代码,只有自己测试时候才会用,但是注释和解除注释,几行代码还方便如果是一片,那会很麻烦,那就用条件调试
比如,我的测试代码,这是打开状态,关闭状态秩序注释掉define即可
当然还有简单的方法,改个true或者false就可以了,如图
这里只是个人见解,大家有意见或者建议的可以提出来,修改完善
1.unity中的Project目录
整体目录大致如下:按资源种类分文件夹,然后每个内部再根据自己项目模块分类
比如Scripts:
Resources根据资源加载,再来一层同样的,然后内部同样的根据自己的模块分类,至于StreamingAssert啥的同理
2.Unity中的Hierarchy
我个人的目录一般如下:不会放太多东西,主要是动态加载,依项目情况而定。
3.C#编写规范
类名:脚本名首字母大写,单词首字母大写,如Rule,RuleControl等变量名:命名表达意思,可以mainRole或者MainRole之类的
注释:脚本说明和变量注释都使用,方法内的注释就简单点的//就可以了
/// <summary>,这样的好处是,你鼠标放到想知道的类名或者变量上去,都会有介绍,这样在其它脚本中调用时就不用,跳过来跳过去了
字段封装:下划线开始,举例如图
方法:方法命名同变量和类名一样,然后注释的话也用///这样的好处是,调用的时候不仅知道参数是干啥的,而且知道每个参数的含义
代码块,代码块的功能时折叠代码,这样的话可以让代码看上去清爽,而且很快找到自己需要的的功能,主要就是把自己的代码包含在#region和#endregion中
这样看上去是不是很舒服,VS里怎么区分代码块不清楚,但是Mono里的侧栏这个看的就很清楚
但是mono调试和使用起来不是很方便,喜欢就是它这个DccumentOutLine不错,找起代码来方便,VS里目前不知道有没有这功能,小伙伴知道的可以知悉我
条件调试运行
有时候会方便调试,写一些快捷的调试代码,只有自己测试时候才会用,但是注释和解除注释,几行代码还方便如果是一片,那会很麻烦,那就用条件调试
比如,我的测试代码,这是打开状态,关闭状态秩序注释掉define即可
当然还有简单的方法,改个true或者false就可以了,如图
这里只是个人见解,大家有意见或者建议的可以提出来,修改完善
相关文章推荐
- 使用Unity5.1进行VR开发的配置(最新的未必是最好的!!!)
- Unity脚本获取内存和FPS
- Unity脚本获取内存和FPS
- Unity3d 读写文本
- unity3d动画帧事件回调脚本必须直接挂在模型上
- Unity3d平台预编译
- 移动游戏性能优化技术干货分享——CPU篇
- 游戏性能优化技术干货分享——内存管理
- Unity UGUI教程之实现滑页效果
- Unity实现滑页效果(UGUI)
- Unity实现滑页效果(UGUI)
- Unity Shaders and Effects Cookbook (3-2) 创建简单的 Phong 高光 光照模型
- Unity3D研究院之游戏场景的切换与持久化简单数据的储存(十四)
- [Unity] 在协程中等待指定的毫秒
- unity 5.3 工业模型的细节展开功能实现
- Unity 导入 fbx 模型文件
- Unity Shaders and Effects Cookbook Chap 1 读书个人小结
- iTween基础之iTweenPath(自定义路径移动)
- Unity 3D 对象池
- Unity Vector3.Slerp() 球形插值详解之二