zoukankan      html  css  js  c++  java
  • Monk快速开发框架前期约定

    命名规则

     

    后端命名(统一采用[前缀]骆驼命名)

    • 所有类都必须以首字母大写开头
    • 接口必须以I开头
    • 业务逻辑或业务接口必须以Services结尾
    • 数据仓储或仓储接口必须以Repository结尾
    • 所有特效必须以Attribute结尾
    • 所有过滤器必须以Filter结尾
    • 关于全局配置类必须以Config结尾
    • 所有控制器必须以Controller结尾
    • 所有拓展类必须以Extention结尾
    • 所有的T4生成文件必须以Generator结尾
    • 所有的枚举必须以Enum结尾
    • 所有的结构必须以Struct结尾
    • 所有的Key配置类都必须以Key结尾
    • 所有的变量必须第一个单词以小写字母开始;第二个单词的首字母大写或每一个单词的首字母都采用大写字母
    • 私有变量必须以下划线开头
    • 对象属性统一采用首字母大写的骆驼命名方式,个别情况可以小写开头,应尽量避免
    • 所有的数据传输对象(DTO)定义的类必须以Dto开头
    • 全局注入的数据必须以两个下划线开头
    • 通常根据数据库表生成对应的实体模型都放在MVC结构中根目录下的Models文件夹中,同时类的名称和表名称一一对应,如果有特殊情况,如有前缀,可自己添加映射关系。
    • 每一个MVC结构中,新建一个控制器,必须在Views文件夹下有对应的控制器同名文件夹,同时对应的Models文件夹也应该有控制器同名的文件夹。
    • Models文件夹下面的所有控制器文件夹中的类必须和控制器下的Action一一对应,如:有DefaultController控制器,那么Models下面就有Default文件夹,那么DefaultController控制器中有多少个Action,就应该对应多少个Dto的类,命名方式为:Dto+控制器名称+Action名称+Model.cs
    • 所有的控制器必须指定请求类型
    • 所有的代码片段必须以snippet_开头,文件的后缀名也是.snippet
    • 所有的类,变量,属性,接口,枚举,方法,结构等命名必须有意义,遵循“宁可长,不可懵”的命名方式。
    • 缓存依赖文件必须以缓存依赖单词结尾 
    • 在布局页定义的@RenderSection必须带Section结尾

    前端命名规范

    • HTML标签自定义属性必须以data-开头
    • CSS中所有自定义的class必须遵循monk-开头
    • Javascript中的类必须是都是首字母大写的骆驼命名方式
    • Javascript中的变量,方法都是首字母小写的骆驼命名方式
    • 自定义的所有前端组件必须遵循 monk-组件名称[-主题]命名方式

    文件或文件夹夹介绍

    • App_Data 数据库存储文件或初始化脚本,如init.sql,*.mdb,*.xml,*.json等
    • App_Start 应用程序启动时执行的类或方法
    • Areas 区域,对应每一块完整的功能模块
    • Assets 静态资源,包括CSS,Image,Js,HTML,字体图标等
    • Assist 助手文件夹,也就是工具库
    • Configure 配置文件,通常是json或xml文件
    • Controllers 控制器
    • Exports 导出的数据文件文件夹
    • Extentions 拓展类
    • Filters 过滤器
    • Generator 代码生成器
    • Models 数据库表对应的实体类
    • Repository 数据库操作文件夹
    • Services 业务逻辑文件夹
    • Snippet 代码片段
    • Views 公共视图文件夹
    • Global.asax 全局类
    • packages.config Nuget包配置文件
    • Web.config 网站配置文件

    后端注释规范

    • 所有的.cs文件必须在最顶部注释,注释格式为:
    // ***********************************************************************
    // 文件名称:
    // 当前版本:
    // 编写作者:
    // 所属项目:
    // 创建时间:
    // 更新时间:
    // 文件描述:
    // 版权所有:
    // 参与人员:
    // ***********************************************************************
    

      

      

      

    • 所有自定义插件或者框架必须在最顶部注释,注释格式为:
    // ***********************************************************************
    // 文件名称:
    // 当前版本:
    // 编写作者:
    // 所属项目:
    // 创建时间:
    // 更新时间:
    // 文件描述:
    // 开源协议:
    // 官方网站:
    // 版权所有:
    // 参与人员:
    // ***********************************************************************
    

      

      

      

    • 所有的方法必须添加C#语言summary的注释,注释格式为:
    /// <summary>
    /// 方法名称:
    /// 编写作者:
    /// 创建时间:
    /// 更新时间:
    /// 方法描述:
    /// 参与人员:
    /// </summary>
    /// <param name=""></param>
    /// <returns></returns>
    

      

      

      

    • 所有的类,接口,枚举,结构必须添加C#语言summary的注释,注释格式为:
    /// <summary>
    /// 类名称:
    /// 类描述:
    /// 编写作者:
    /// 创建时间:
    /// 更新时间:
    /// 参与人员:
    /// </summary>
    

      

      

    • 单行代码注释统一在该代码上面注释,注释格式为:
    // 说明
    string str="百小僧";
    

      

    • 控制器Action注释格式:
    /// <summary>
    /// 行为名称:
    /// 行为方式:
    /// 编写作者:
    /// 创建时间:
    /// 更新时间:
    /// 方法描述:
    /// 参与人员:
    /// </summary>
    /// <param name=""></param>
    /// <returns></returns>
    

      

      

    代码编写规则

    • 变量采取就近原则,就是什么时候用,就在什么时候定义
    • 处理同一逻辑功能的代码不用空出一行,其他的应空行分割
  • 相关阅读:
    python解析网页中js动态添加的内容
    pycharm索引index时间很长的原因
    github/gitlab ssh-keys全局唯一
    使用gc、objgraph干掉python内存泄露与循环引用!
    ImportError: No module named _curses;Color support is disabled, python-curses is not installed.解决办法
    jinjia2模板学习
    flask可以通过缓存模板或者页面达到性能提升
    python的websocket实现Tornado
    flask的debug模式下,网页输入pin码进行调试
    Git 环境安装
  • 原文地址:https://www.cnblogs.com/baiqian/p/5857735.html
Copyright © 2011-2022 走看看