刚下飞机——代码规范、本次冲刺任务与计划

Alpha冲刺

这个作业属于哪个课程 2020春|W班
这个作业要求在哪里 团队作业第五次——站立式会议+alpha冲刺
团队名称 刚下飞机
这个作业的目标 记录本项目的代码规范、Alpha冲刺的任务与计划
作业正文 刚下飞机——代码规范、本次冲刺任务与计划
其他参考文献 CSDN 《构建之法》

代码规范

后端JAVA代码规范

该部分主要参考《阿里巴巴Java开发手册》

(一) 命名规约:

  1. 代码的所有命名都不允许以下划线或美元符号开始,也不能以下划线或美元符号结束

    反例: _name / __name / $Object / name_ / name$ / Object$
    
  2. 代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。

  3. 类名使用UpperCamelCase风格,必须遵从驼峰形式,但以下情形例外:(领域模型的相关命名)DAO / BO / DTO / VO等。

    正例:MarcoPolo / UserDAO / XmlService / TcpUdpDeal /   TaPromotion 
    反例:macroPolo / UserDAo / XMLService / TCPUDPDeal /   TAPromotion
    
  4. 方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰形式(在本项目中id对应的大写应为ID)。

    正例: userName / getName() / userID
    
  5. 常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。
    正例: MAX_STOCK_COUNT
    反例: MAX_COUNT

  6. 测试类命名以它要测试的类的名称开始,以Test结尾。

    正例: QuestionServiceTest
    
  7. 杜绝完全不规范的缩写,避免望文不知义。

    反例: AbstractClass“缩写”命名成AbsClass;condition“缩写”命名成 condi,questionID“缩写”命名成qid,此类随意缩写严重降低了代码的可阅读性。
    
  8. 对于Service和DAO类,基于SOA的理念,暴露出来的服务一定是接口,内部的实现类用Impl的后缀与接口区别。

    正例:AnswerServiceImpl实现AnswerService接口。
    
  9. 各层命名规约:

    Service / DAO层

    1. 获得单个对象用get做前缀
    2. 获得多个对象用list做前缀
    3. 插入的方法用add做前缀
    4. 删除的方法用delete做前缀
    5. 修改的方法用update做前缀

(二) 常量定义

  1. 不允许出现任何魔法值(即未经定义的常量)直接出现在代码中。

    反例:  String key="Id#taobao_"+tradeId;
           cache.put(key,  value);
    

(三) 格式规约

  1. 大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则:

    • 左大括号前不换行。

    • 左大括号后换行。

    • 右大括号前换行。

    • 右大括号后还有else等代码则不换行;表示终止右大括号后必须换行。

        正例:
              if (a == b) {
                 result = true;
              } else {
                  result = false;
              }
        反例:
              if (a == b)
              {
                  result = true;
              }
              else
              {
                  result = false;
              }
      
  2. if/for/while/switch/do等保留字与左右括号之间都必须加空格。

  3. 除了一元运算符外,其他的运算符左右必须加一个空格。

说明:运算符包括赋值运算符=、逻辑运算符&&、加减乘除符号、三目运行符等。
  1. 缩进采用4个空格,禁止使用tab字符。

  2. 单行字符数限制不超过 120个,超出需要换行,换行时遵循如下原则:

    • 第二行相对第一行缩进 4个空格,从第三行开始,不再继续缩进,参考示例。

    • 运算符与下文一起换行。

    • 方法调用的点符号与下文一起换行。

    • 在多个参数超长,逗号后进行换行。

    • 在括号前不要换行,见反例。

        正例:
            StringBuffer sb = new StringBuffer();
            //超过120个字符的情况下,换行缩进4个空格,并且方法前的点符号一起换行
            sb.append("zi").append("xin")...
                .append("huang")...
                .append("huang")...
                .append("huang");
            反例:
            StringBuffer sb = new StringBuffer();
            //超过120个字符的情况下,不要在括号前换行
            sb.append("zi").append("xin")...append
                ("huang");
            //参数很多的方法调用可能超过120个字符,不要在逗号前换行
            method(args1, args2, args3, ...
                , argsX);
      
  3. 方法参数在定义和传入时,多个参数逗号后边必须加空格。

(四) 注释规约

  1. 类、类属性、类方法的注释必须使用Javadoc规范,使用/*内容/格式,不得使用//xxx方式。

  2. 所有的抽象方法(包括接口中的方法)必须要用Javadoc注释、除了返回值、参数、异常说明外,还必须指出该方法做什么事情,实现什么功能。

  3. 方法内部单行注释,在被注释语句上方另起一行,使用//注释。方法内部多行注释使用/ */注释,注意与代码对齐。

(五) 其他

  1. 所有的覆写方法,必须加@Override注解。

  2. 在if/else/for/while/do语句中必须使用大括号,即使只有一行代码,避免使用下面的形式:if (condition) statements;

前端代码规范

HTML

  1. 元素名、属性名全小写

  2. 属性值由双引号包围

  3. 关闭所有 HTML 元素

  4. 缩进采用4个空格,禁止使用tab字符

CSS

  1. 选择器一般不要写超过3个

  2. 少用!important

  3. 一律小写,中划线

  4. 杜绝完全不规范的缩写,避免望文不知义。

  5. 不要随便使用id

JS

(一) 命名规约

  1. 代码的所有命名都不允许以下划线或美元符号开始,也不能以下划线或美元符号结束

  2. 方法名、参数名、变量都统一使用lowerCamelCase风格,必须遵从驼峰形式(在本项目中id对应的大写应为ID)。

  3. 杜绝完全不规范的缩写,避免望文不知义。

(二) 格式规约

  1. 大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则左大括号不换行

  2. 除了一元运算符外,其他的运算符左右必须加一个空格。

  3. 缩进采用4个空格,禁止使用tab字符。

(三) 注释规约

  1. 方法内部单行注释,在被注释语句上方另起一行,使用//注释。方法内部多行注释使用/ */注释,注意与代码对齐。

Alpha冲刺任务与计划

日期 完成的功能模块
4.27 查看问题
4.28 发布回答、发布评论
4.29 查看回答
4.30 修改密码、采纳回答、查看评论
5.1 置顶回答、发布回复
5.2 取消匿名提问/回答、修改绑定邮箱
5.3 点赞/取消点赞评论、回复
5.4 收藏问题、细节完善
5.5 前提完善交互体验、部署前本地测试
5.6 部署到服务器测试

猜你喜欢

转载自www.cnblogs.com/JustGotOffThePlane/p/12808885.html