标识符大小写命名
定义
本文使用以下简称
Pascal: Delphi的命名方式, 所有单词均为首字母大写, 其它字母小写, 不使用下划线,但可以使用点
Camel: 驼峰命名法 首个单词首字母小写, 其它单词遵循Pascal规则
| 标识符 | 大小写 | 备注 |
|---|---|---|
| 命名空间 | Pascal | |
| 类 | Pascal | |
| 接口 | Pascal | 以 “I” 开头 |
| 方法/函数 | Pascal | |
| 属性 | Camel | |
| 事件 | Pascal | |
| 私有字段 | Camel | 以 “_” 开头 |
| 非私有字段 | Camel | |
| 枚举 | Pascal | |
| 参数 | Camel | |
| 局部变量 | Camel | |
| 泛型类型 | Pascal | 以 “T” 开头 |
| 集合类型 | Pascal | 以 “s” 结尾表示为复数 |
目录布局
解决方案下的布局
注意: 目录应该是实际存在的目录, 即先实际建立目录再到VS里添加或者创建相关项目, 如果直接在VS里创建目录那么这个创建的目录是虚的.所有目录名可以加上项目的名称, 中间以点分隔. 另外特别注意 ####不要使用奇怪的文件夹, 例如Methods Function ####
Infrastructure: 基础设施, 存放多个模块公用的类库, 例如 Common类库就存放在这个目录下,
Doc: 存放相关文档
Modules: 存放各个子模块
ThirdParties: 存放第三方类库, 例如自己修改过或实现了新特性的类库, 还有一些不在Nuget上存放的包, 以及一些其它人写的通用的类库, 该目录下的类库应该全部托管到git的仓库, 然后以子模块的形式加载到解决方案中
README.md: 写一些项目总体的描述和一些开发环境设置的教程
模块下目录布局
Services: 服务, 存放所有用到的服务类, 包括发起HTTP请求的类, 封装的函数也可以放在这里
ViewModels: 视图模型类, 目前暂时把 模块主视图ModuleViewModel和其它显示视图模型ClassViewModel都放在这里, 其实也可以把这两个分开,但因为一般一个模块只有一个主视图, 就懒得分开了
Models: 模型, 基础的模型, 在REST应用中, 这里存放和后台DTO对应的Model, 当然如果这个Model在多个模块中使用, 那么应该独立出来放到单独的一个 Api 类库下的Model文件夹中, 并以Model的作用以文件夹进行归类
Views: 视图, 嗯, 所有界面相关的都扔这里吧
Constants: 放一些常量
Helpers: 辅助类, 例如 ValidationRule 这种
Extensions: 扩展类, 一般也就放点扩展方法吧
Enums: 枚举类放在这个里面
Converters: WPF绑定用的转换器
Selectors: 模板选择器
Resources: 图像/静态资源
Events: Prism使用的事件消息