zoukankan      html  css  js  c++  java
  • 项目Alpha冲刺——代码规范、冲刺任务与计划

    作业要求

    这个作业属于哪个课程 软件工程1916-W(福州大学)
    这个作业要求在哪里 项目Alpha冲刺
    团队名称 基于云的胜利冲锋队
    项目名称 云评:高校学生成绩综合评估及可视化分析平台
    这个作业的目标 团队的代码规范、本次冲刺任务与计划
    其他参考文献 1.邹欣.构建之法[M].3版:人民邮电出版社,2014.

    团队阵容

    队员学号 队员姓名 个人博客地址 备注
    221500201 孙文慈 https://www.cnblogs.com/swc221500201/
    131601207 陈序展 https://www.cnblogs.com/chenxuzhan/
    221600414 冯凯 https://www.cnblogs.com/codingkai/ 队长
    221600415 傅德泉 https://www.cnblogs.com/dqblog/
    221600416 黄海山 https://www.cnblogs.com/hhs-blog/
    221600417 黄乐兴 https://www.cnblogs.com/hlxing/
    221600439 <script> https://www.cnblogs.com/aaaaaaaaaaaaaa/

    任务与计划安排

    天数 任务安排
    第一天 代码规范制定,项目前后端各自基础构建,选定框架、UI库
    第二天 熟悉框架、UI库,编写大体架构,数据库建库建表
    第三天 熟悉框架和库,统一开发流程,后端 PO 模型
    第四天 编写API文档,完成注册页面,编写登录,注册接口
    第五天 完成登录页面,编写教师评分维度管理接口
    第六天 完成新建评分维度页面,编写教师新建班级接口
    第七天 完成教师新建班级页面,编写教师编辑班级接口
    第八天 完成教师编辑班级页面,编写学生及助教加入班级功能接口
    第九天 完成学生及助教加入班级页面,测试接口安全性,校验接口是否完成需求
    第十天 Alpha版本程序的测试与交付

    代码规范

    后端

    代码格式

    • 缩进以4个空格为单位,禁止使用 tab 字符
    • 大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则:
      • 左大括号前不换行
      • 左大括号后换行
      • 右大括号前换行
      • 右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行
    • 尽量避免一行的长度超过80个字符
    • 当一个表达式无法容纳在一行内时,可在一个逗号后面断开或在一个操作符前面断开
    • 新的一行应该与上一行同一级别表达式的开头处对齐
    • 将类似操作,或一组操作放在一起不用空行隔开,而用空行隔开不同组的代码
    • 方法参数在定义和传入时,多个参数逗号后边必须加空格
    • if/for/while/switch/do 等保留字与括号之间都必须加空格

    命名风格

    • 代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束
    • 法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,必须遵从驼峰形式
    • 常量命名全部大写,单词间用下划线隔开
    • 包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用单数形式,但是类名如果有复数含义,类名可以使用复数形式
    • 类名每个单词必须由大写字母开头而其他字母都小写的单词组成
    • 任何自定义编程元素在命名时,使用尽量完整的单词组合来表达其意
    • 数组应该用下面的方式来命名
    byte[] buffer;
    
    • 不用数字定义名字
    • 枚举类名建议带上 Enum 后缀,枚举成员名称需要全大写,单词间用下划线隔开
    • POJO 类中布尔类型的变量,都不要加 is 前缀

    常量定义

    • 不允许任何魔法值(即未经预先定义的常量)直接出现在代码中
    • 如果变量值仅在一个固定范围内变化用 enum 类型来定义

    注释规约

    • 类、类属性、类方法的注释必须使用 Javadoc 规范,使用/**内容*/格式,不得使用// xxx 方式
    • 所有的类都必须添加创建者和创建日期
    • 方法内部单行注释,在被注释语句上方另起一行,使用//注释。方法内部多行注释使用/* */注释,注意与代码对齐
    • 代码修改的同时,注释也要进行相应的修改,尤其是参数、返回值、异常、核心逻辑等的修改

    控制语句

    • 在 if/else/for/while/do 语句中必须使用大括号。即使只有一行代码,避免采用单行的编码方式:if (condition) statements;
    • 避免采用取反逻辑运算符

    领域设计规范

    • 服务类基于业务领域模块划分,划分原则可以与业务表对应
    • 尽量减少表连接,杜绝两个业务领域的表连接
    • 禁止大表连接(超过100w数据)
    • 禁止在SQL语句中使用1=1
    • 禁止批量数据用in关键词分组排序,即在In条件复杂查询语句
    • 更新操作条件必须有索引,通过explain确认执行计划走索引,尽量使用pk主键
    • 查询条件必须走索引
    • 原则上不允许应用使用delete语句,如有需要,必须记log,经过团队评审
    • 实体类与数据库表对应,api接口下的实体与dao层不一致,dao层实体命名为XxxEntity,防止修改内部实体类影响接口稳定性。

    数据库设计规范

    • 禁止删除字段
    • 禁止更新字段名称,类型,减少长度;可以修改增加字段长度或备注
    • 数据库脚本支持提前上线,否则会影响热发布或者灰度发布
    • 每个领域实体表必须有一个领域主键驱动,便于信息查询
    • 查询结果按需读取,防止因字段过大造成数据传输开销
    • SQL命名准确,功能要单一,不能包含多种含义功能,维护会更复杂
    • 命名使用下划线命名,统一小写

    前端

    文件组织结构

    • 所有前端代码、插件、配置文件和资源都放在项目的根目录下
    • 所有外部模块和插件都放在/node_modules目录下
    • 主页icon和index.html放在/public目录下
    • 所有编写的组件、资源文件以及main.js都放在/src目录下
    • 所有静态资源文件放在/src/assets目录下
    • 所有Vue组件放在/src/components目录下
    • README.md放在项目的根目录下,提供项目的配置安装指南

    HTML代码规范

    • 文件名全部使用小写字母,相邻单词之间使用“_"连接
    • 所有标签名必须小写,并且要有正确的关闭标签
    • 相邻标签之间用4个空格缩进
    • 标签名中相邻单词之间用“-”分隔
    • 标签属性名全部小写,value用“”括起来
    • HTML的语言属性统一设置为zh-cn

    CSS代码规范

    • 文件名全部使用小写字母,相邻单词之间使用“_"连接
    • 类选择器和id选择器要合理使用
    • 类名和id名全部使用小写字符,相邻单词之间用“-”分隔
    • 为避免css样式的冗余,尽量将共同的样式提取到同一个选择器中
    • 仅当前组件的style样式使用“scoped”加以范围说明

    JavaScript代码规范

    • 文件名全部使用小写字母,相邻单词之间使用“_"连接

    • 代码段之间使用4个空格缩进,代码段使用{}括起来

    • 变量使用小写字母表示,相邻单词之间使用“-”分隔

    • 变量,表达式之间使用空格分开,常量使用大写字母表示

    • 段注释使用/**/表示

    • 行注释使用//表示

    系统设计和数据库设计问题解答

    团队成员的贡献度如何存储?

    贡献度字段在用户得分表里面存储,每次作业的得分当做一条记录。
    

    作业发布后是否可编辑?

    可以实时编辑并存储。
    

    如何防止学生修改成绩?

    只有拥有班级权限的老师角色才拥有修改成绩的权限。
    

    系统设计书内容欠缺?

    相关内容已增加。
    

    二次评分,比如手误操作如何验证?

    老师可以对学生成绩进行多次修改。
    
  • 相关阅读:
    ASP.NET CORE 使用Consul实现服务治理与健康检查(2)——源码篇
    ASP.NET CORE 使用Consul实现服务治理与健康检查(1)——概念篇
    Asp.Net Core 单元测试正确姿势
    如何通过 Docker 部署 Logstash 同步 Mysql 数据库数据到 ElasticSearch
    Asp.Net Core2.2 源码阅读系列——控制台日志源码解析
    使用VS Code 开发.NET CORE 程序指南
    .NetCore下ES查询驱动 PlainElastic .Net 升级官方驱动 Elasticsearch .Net
    重新认识 async/await 语法糖
    EF添加
    EF修改部分字段
  • 原文地址:https://www.cnblogs.com/CodingMaster/p/10765832.html
Copyright © 2011-2022 走看看