项目目录及代码规
一、目录部分(公共规范)
 
1.自定义目录以_开头(一级目录也是就在Assets目录下面的自定义目录)(之前有看过一篇文章说如此做法的好处是:文件夹下如果没有用到的资源,打包时不会被打入进去);
建议场景以双下划线__开头,保证场景永远在所有文件夹的最前边。
 
2.
 
--Editor 自写的灵活方便插件
 
--Editor_NGUI 较大型三方的插件(前面加上Editor是为了让所有编辑器都集中在一块)
 
(--NGUI 较大型三方的插件,如果你们目录不多,看起来不乱不改名字也没问题。方便更新。如果用的插件比较多的话,还是将它放到Plugins下面。只是更新的时候需要注意一下就是了。)
 
-
-Gizmos 使用GIZMOS所需要的标志等临时文件
 
--StreamingAssets  (包括JsonData目录/Assetbundle目录/各种只读文件预储存目录,这个目录将自动打包到导出程序,用Application.streamingAssetsPath读取)
 
--Models 模型文件,其中会包括自动生成的材质球文件
 
--Others 其他类型的文件(一般作为不常修改的文件类型,例如添加的Shader、物理材质、动画文件。)若认为是比较常用的话,可以提取成一个文件夹。
 
--Plugins 主要是DLL的外部插件文件,例如JsonFx、SmartFoxClient等
 
--Prefabs 预储存文件
 
--Resources 动态加载的资源文件,一般这里只用少量,多的话,需要自己打ASSETBUNDLE包,有选择性的动态加载
 
--Scenes 场景文件
 
--Scripts 脚本代码文件
 
--Sounds 音效文件
 
--Textures 所有的贴图
 
增加一个大写字母Z打头的测试文件夹,比如Ztest,所有的测试内容都可以放到这个文件夹,好处是该文件夹永远处于所有文件夹的最下面,而且最后打包的时候可以完全删掉,保证测试的内容都剔除出去。
 
 
 
 
 
 
 
二、代码部分(程序规范)
基本命名规范:
      命名原则
Pascal Case : 所有单词第一个字母大写,其他字母小写。
Camel Case : 除了第一个单词,所有单词第一个字母大写,其他字母小写。
原则:MicroSoft建议,对于简单的变量使用CamelCase,而对于比较高级的命名规则使用PascalCase。
3.1.2.        Namespace「名空间」 命名规范
1)  使用 公司名.产品名 这样的格式。(例:B)
2)  Namespace中类的依赖关系应该体现在命名上,比如System.Web.UI.Design中的类以来于System.Web.UI
3)  使用 Pascal大小写形式命名。(例:GameSceneScript)
4)  当商标(产品名)的命名风格和Pascal风格不符时,以商标(产品名)为准。(例:iOS)
5)  在语意合适的情况下使用复数,比如System.Collections。例外是缩写和商标的情况。
6)  Namespace的名字不一定和Assembly一一对应。
3.1.3.        Class[类] 命名规范
1)  使用名词或者名词性词组命名class
2)  使用 Pascal case
3)  文件名应和类名相同。
4)  保守地使用缩写。
5)  不使用type前缀,例如C来标识Class。比如,使用FileStream而不是CFileStream
6)  不使用下划线。
7)  偶尔的在Class名称组成中需要使用I开头的时候,比如IdentityStorejust use it
8)  在合适的时候,使用单词复合来标识从某个基类继承而来。比如xxxException
3.1.4.        Interface[接口]的命名
1)  使用名词或者名词性词组命名Interface
3d走视图2)  使用 Pascal case
3)  保守地使用缩写。
4)  interface 名称前加上字母I来表示typeinterface如:(IBabybus)
5)  在某个class是某个interface地标准实现地时候,用类似的名字来命名它们,仅仅在interface的名称前面多个I
6)  不要使用下划线。
7)  文件名应和类名相同。
3.1.5.        Attribute[参数] 命名规范
1) 总是给Attribute类加上Attribute后缀。
2)  文件名应和类名相同。
3.1.6.        Enumeration Type[枚举] 命名规范
1)  Enum类型和值使用Pascal case
2)  不要在Enum类型名称后面加上Enum后缀。
3)  对于大多数Enum类型使用单数名称,仅仅在这个Enum类型是bit fields地时候使用复数形式。
4)  总是给bit field Enum 类型添加FlagsAttribute
3.1.7.        Static Field[静态变量] 命名规范
1)  使用名词、名词性词组或者名词地缩写来命名static fields
2)  使用Pascal case
3)  不要在static field名称中使用匈牙利命名法[变量名=属性+类型+对象描述]
4)  在任何可能的情况下推荐你使用静态properties[属性]而不是public static fields
3.1.8.        Private Field[私有变量] 命名规范
1)  使用名词、名词性词组或者名词地缩写来命名。
2)  使用Camel Case。                      
3)  变量名中不使用下划线 (_)
4)  成员变量不要使用匈牙利命名法。
5)  只要合适,在变量名的末尾追加计算限定符(AvgSumMinMaxIndex)。