Eevee框架5——命名规范

做着做着发现命名规则有必要统一一下,至少我本人需要统一一下,不能再随意命名了。本篇会根据开发过程中发现的命名问题,持续制定规则。
脚本规范如下:

namespace:无特殊情况不使用namespace,中小型项目并不需要专门搞个namespace,输出插件之类的再考虑namespace。
类名:跟大家一样,类名使用驼峰命名,首字母大写,单词必须有意义,如public class ObjectPool。
方法名:和类名一样,驼峰命名,首字母大写,如CreateObject()。
全局变量名:差异最大争议最多的就是变量名了,这里个人用下来感觉还是以m_后面大写单词的形式最好,如m_PoolCache。避免生成public变量,需要访问的均以属性访问即可。
局部变量名:首个单词首字母小写,后面的单词首字母大写。这个争议不大。
属性名:与类名一样,驼峰命名,首字母大写,如PoolCache。
需要为每个public的对象(类、属性、变量等)作三斜杠备注,需为所有参数释意。

单例代码经规范后示范如下:

namespace EeveeFramework
{
    /// <summary>
    /// 单例基类
    /// </summary>
    /// <typeparam name="T">T</typeparam>
    public abstract class Singleton<T> where T : Singleton<T>, new()
    {
        //实例对象
        protected static T m_Instance = null;

        /// <summary>
        /// 构造函数
        /// </summary>
        protected Singleton()
        {

        }

        /// <summary>
        /// 实例
        /// </summary>
        public static T Instance
        {
            get
            {
                if (m_Instance == null)
                {
                    m_Instance = new T();
                }
                return m_Instance;
            }
        }
    }
}

然后可以在VS的查看-设计,去检查一下是否所有变量、函数、属性名都设置正确:

image.png

文件夹规范如下:

【规则1-1】Assets目录中的所有资源文件名(场景、脚本、预设、模型、网格、纹理、材质、精灵、着色器、音频剪辑、视频剪辑)均采用 大驼峰式命名法 ,即每一个单词的首字母都大写。且使用能够描述其功能或意义的英文单词或词组。

image.png

【规则1-2】资源文件属于同一类型,需要添加编号加以区别的情况下,采用后缀下划线”_”加两位数字进行编号。
【规则1-3】Assets目录中不得出现压缩包、PPT、Word文档等与游戏项目无关的资源文件。
【规则1-4】Assets根目录下的文件夹分类如下,根据资源文件使用的目的分类:

image.png

文件夹说明(01-7为自定义文件夹,最后4个为默认目录,即系统可识别文件夹):
【01.Scenes】:存放所有场景(Scene)文件,统一管理,方便快速寻找并打开场景。
【02.UI】:存放与游戏界面(UI)相关的资源文件,比如按钮,图标,输入框,列表等。
    【Audios】:UI相关的音效。
    【Fonts】:字体。
    【Materials】:UI相关的材质。
    【Shaders】:UI相关的shader。
    【Sprites】:精灵。
    【Textures】:某些背景图大图、加载图片等。
【03.Resources】:存放场景中UI以外的资源文件,比如模型、音频、材质等。
    【Animations】:动画。
    【Animators】:动画控制器。
    【Audios】:音频文件、配音、音效。
    【Materials】:材质。
    【Models】:模型资源。
    【Prefabs】:预设。
    【Shaders】:Shader。
    【Textures】:图片、贴图资源。
【04.Scripts】:Editor以外所有自写脚本。
【05.Tools】:下载的插件或自写的插件。
【06.Others】:存放不知道如何归类的资源文件。
【07.Temps】:临时文件夹,(发布前)处理无用资源时优先删除。
【Editor】:插件目录,该目录在编译项目时,会优先编译,方便项目中代码调用。 StreamingAssets
【Plugins】:该目录下的代码可调用Unity Editor 的API,存放扩展编辑器的代码。编译时不会被打包到游戏包中。
【Resources】:项目中默认的资源路径,会直接打包到游戏包中,并且可在脚本中加载该目录下的资源。
【StreamingAssets】:需要StreamingAssets加载的资源。

这是我已经按照上述规则创建好的文件夹命名示例:
链接: https://pan.baidu.com/s/19XI3gaqU3Hq2JA-QCO_p_w
提取码: s5f2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值