zoukankan      html  css  js  c++  java
  • 开发规范

    转至元数据结尾 转至元数据起始

    文件规范

    • 文件必须使用UTF-8编码

    命名规范

    • 数据库命名规范
      • 数据库表命名均遵循以下规范:
        • 多个单词用下划线分隔,全部小写,例如:mail_message。
      • 数据库字段命名遵循以下规范:
        • 表字段全部小写,多个单词用下划线分隔,例如:message_id。
        • 每张表必加唯一标识;按需可补充create_time 、creator、update_time 、updater,记录创建时间、创建人、修改时间、修改人 ;
        • 有逻辑删除需求的表,可选增加status_id字段(int类型),用来标识字段是否被逻辑删除;-1表示无效,0表示正常,1表示逻辑删除
        • 字段类型可选范围int,varchar,timestamp,长度设定要考虑扩展性
        • 多表之间不设定外键约束
        • 多表之间不进行关联查询
    • Java源码命名规范
      • 目录 的命名
        • 项目rest-example:
          1. src/main/java 源码目录
          2. src/main/resources 资源文件目录
          3. src/main/webapp web文件目录
          4. src/test/java 测试源码目录
          5. src/test/resources 测试资源文件目录
      • Package 的命名
        • Package 的名字应该都是由一个小写单词组成,包的命名一般都是按照域名+公司名+项目名+具体反映包内容的名字。例如:cn.dinfo.xf。
        • Package 存在多个单词,可以使用下划线分割,例如cn.dinfo.xf.words_tag
        • 此外,对于包名我们做如下约定:
          1. 工具类包名前缀为 .utils
          2. servlet类包名前缀为 .controller
          3. 逻辑功能类包前缀为 .service
          4. 具体的逻辑功能内容前缀为功能的缩写.service.order
      • Class 的命名
        • 类名是个名词,采用大小写混合的方式,每个单词的首字母大写。尽量使你的类名简洁而富于描述。例如:DataFile或InfoParser。
        • 使用完整单词,避免缩写词(除非该缩写词被更广泛使用,像URL,HTML)。 
        • 异常类最后加上「Exception」(例:SQLException)。 
        • 接口的命名和类的命名大体相同,只是接口一般用形容词。例如:Runnable。
        • 测试类名后缀统一为Test,例如QAControllerTest
      • Class 变量的命名
        • 变量的名字必须用一个小写字母开头。后面的首个单词用大写字母开头。 例如:debug 获debugService。
        • 变量为数据实体,采用驼峰,例如数据实体为messageId
      • Static Final 变量的命名
        • Static Final 变量的名字应该都大写,并且指出完整含义,多个单词之间用下划线分隔。例如:MAX_UPLOAD_FILE_SIZE=1024。
      • 数组的命名
        • 数组应该总是用下面的方式来命名:byte[] buffer;而不是:byte buffer[];
      • 方法的命名
        • 方法名以小写字母动词开头,后续的各个单词开头字母大写,数据实体构造器除外。例如:inputFile()。
        • JavaBeans的相关函数、设置成员变量的方法用“set”+成员变量名表示,读取成员变量的方法用“get”+成员变量名表示。但是,对于布尔值(boolean)读取成员变量的方法用“is”+成员变量名表示。
        • 名词单数,必须使用单数英文,如Account、Customer。
        • 对于数组,列表等对象集合的命名,必须使用复数,而且最好按照英文的语法基础知识使用准确的复数形式,如 List < Account > accounts、Set< Strategy > strategies。
        • 方法名的命名,需要使用“动宾结构短语”或“是动词+表语结构短语”,例如createOrder(Order order),removeOrders(List<Order> orders)
        • 添加:add,创建;例如addStudent
          修改:update,修改;例如updateStudent
          查询:get,获取单个对象;load,加载资源;list,不分条件列举;search,有条件查询;
          删除:delete,删除;remove,移除;逻辑修改为无效状态属于删除

    代码规范

    • 代码
      • 文件头声明
        • /**
           * Description: 问答接口
           * Author: perkins
           * Date: 2017/3/9
           */
      • 代码块书写格式
        if (true){
           //body 必须包含大括号  即使只有一行代码 避免后期增加代码时出现错误

                          }

    • 注释
      • 类注释
        • /**
           * Description: 问答评价
           * Author: perkins
           * Date: 2017/3/9
           */
    • SQL语句
      • 代码中书写的SQL语句要求SQL关键字全部大写,表名和字段名小写。例如:SELECT user_id, name FROM account WHERE user_id > ? AND depart = ? ORDER BY name
    • Java注释有三种类型,分为单行注释(//),多行注释(/* */)和文档注释(/** */)。
      • 注释应放在代码的上方或右方,不能放在其下方。
      • 全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。 
      • 在每个源文件的头部要有必要的注释信息,包括:文件名;版本号;作者;生成日期;模块功能描述(如功能、主要算法、内部各部分之间的关系、该文件与其它文件关系等);主要函数或过程清单及本文件历史修改记录等。
      • 对于代码中的逻辑分支或循环条件需要书写注释
        if (some condition){ 
        //符合某个条件,应该这样处理
        }else{
        //否则应该那样处理
        }
      • java的类和方法,都需要用文档注释。例:
        • /**
           * Description: 问答评价
           * Author: perkins
           * Date: 2017/3/9
           */
  • 相关阅读:
    关于MySql 数据库InnoDB存储引擎介绍
    .netcore 中使用开源的AOP框架 AspectCore
    C#关于反序列化实例时,接收实体字段少于或大于原实体对象 解析测试
    PostgreSQL TIMESTAMP类型 时间戳
    C# 新特性 操作符单?与??和 ?. 的使用
    PostgreSQL 常用函数
    AutoCAD.Net/C#.Net QQ群:193522571 previewicon生成的块图标太小,CMLContentSearchPreviews生成大的图片
    C#winform中OpenFileDialog的用法
    C# winform datagridview 无需点击两次即可编辑内嵌控件的方法和删除默认的空行的方法
    C# winform datagridview 内嵌控件值改变后立即触发事件,而不需要离开该单元格时才触发,此时需要用到dgv_CurrentCellDirtyStateChanged事件
  • 原文地址:https://www.cnblogs.com/gaoxufei/p/6542524.html
Copyright © 2011-2022 走看看