我和群众站一队-代码规范、冲刺任务与计划
目录
- 代码规范
- 本次冲刺任务
- 冲刺计划
代码规范
- 项目结构
模块化:使用标准的Java包结构进行模块划分。将不同的功能模块分别放置在controller、service、repository、entity、dto等目录中。
分层架构:使用分层架构,例如控制器层(Controller)、业务逻辑层(Service)、数据访问层(Repository)等,每一层负责单一职责。
文件命名:类名应遵循大驼峰命名法(如UserService);变量和方法名遵循小驼峰命名法(如getUserById)。 - 命名规范
类名:使用名词或名词短语,反映类的职责。例如UserService、MatchService。
方法名:方法名应为动词或动词短语,简单明了,描述方法的功能。如saveUser、getMatchDetails。
变量名:避免使用无意义的变量名,如i、data等。变量名要清晰描述其作用,例如userList、prizeAmount。 - 注释规范
类注释:每个类的开头添加描述性注释,说明类的作用、使用场景及特殊注意事项。
方法注释:方法注释应包括方法的功能、参数说明和返回值描述,必要时解释逻辑。
行内注释:代码逻辑较复杂时,适当添加行内注释,以便后续阅读和维护。 - 代码格式
缩进:统一使用4个空格缩进,不使用Tab。
行长度:每行代码尽量保持在80-120个字符以内,避免过长的代码行。
空行:代码块之间适当使用空行,增强代码的可读性。方法之间留一行空行。
花括号:遵循一致的花括号使用规范(如单行if/else仍需加花括号,防止误读)。 - 代码风格
常量定义:常量使用static final关键字定义,命名采用全大写字母和下划线分隔,如MAX_RETRY_COUNT。
异常处理:捕获异常时应尽量具体,避免直接捕获Exception,提供错误信息,必要时记录日志。
空值检查:在可能为null的变量上添加null检查,避免NullPointerException。
字符串拼接:避免在循环中使用+进行字符串拼接,使用StringBuilder或StringBuffer代替。 - Java代码规范(Spring Boot)
Controller层:控制器类命名为[实体名]Controller,注入Service类时使用构造器注入。
Service层:业务逻辑类命名为[实体名]Service,接口和实现类命名为[实体名]Service和[实体名]ServiceImpl。
Repository层:数据访问层使用[实体名]Repository,并继承JpaRepository或其他数据接口,方便数据库操作。
DTO和Entity:DTO用于数据传输,Entity用于数据库映射。严格区分这两者,避免耦合。 - Android开发规范
Activity和Fragment:遵循Activity和Fragment的命名规则,命名时添加功能前缀,如UserDetailActivity、LoginFragment。
资源文件命名:布局文件、字符串、颜色、样式等资源文件应遵循有前缀的命名格式,如activity_user_detail.xml、color_primary、string_app_name。
XML布局:尽量使用ConstraintLayout,减少嵌套层级,提高性能。尽量避免在XML中使用硬编码字符串。
ViewModel和LiveData:逻辑较复杂的页面应使用ViewModel和LiveData进行数据绑定,确保代码可读性和维护性。 - 日志记录
日志级别:INFO用于关键流程的信息,DEBUG用于调试信息,ERROR用于错误信息。
日志内容:记录关键的输入参数、重要的状态变化及异常信息,确保日志内容有助于排查问题。
敏感信息:避免在日志中记录敏感信息,如用户密码、个人隐私信息等。 - 测试
单元测试:业务逻辑较复杂的方法应编写单元测试,使用Junit或Mockito等框架进行Mock测试。
命名规范:测试方法命名应反映测试的功能,如shouldReturnUser_whenValidIdIsGiven。
覆盖率:尽量提高单元测试覆盖率,尤其是Service和Utils类中的核心逻辑。 - 版本控制
分支命名:分支命名应体现功能或任务,如feature/user-authentication、bugfix/issue-1234。
提交信息:提交信息应简洁明了,说明变更的主要内容,如fix: 修复用户登录错误、feat: 添加用户认证功能。
本次冲刺任务
- 前端完成90%界面设计
- 后端完成90%-100%的接口功能


冲刺计划
- 11.2-11.3 完成基本设计和实体、接口定义
- 11.3-11.9 完成所有功能接口
- 11.9-11.11 前后端相互沟通调试/优化接口
...全文


