版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/smd2575624555/article/details/80860576
写工程化代码
工程化宣言
要写工业级的代码、不要写玩具性质代码。
什么是工程化?
所有能降低成本,并且能提高效率的事情的总称为工程化。
怎么做到工程化?
- 要标准化、规范化工程结构。
- 要有统一的发布工具。比如Jenkins。
- 要有统一的构建工具。比如maven。
- 要基于版本库管理代码、配置文件。要基于分支开发需求。
- 尽可能多的写单元测试。
- 相同功能的类库,整个项目中用同一款,同一个版本。
- 要有统一的Bug修复流程。
- 要有需求落地的流程规范。
- 必不可少的监控。
- 要有基础设施。如:发布系统、监控系统、相关中间件。
- 要有日志输出、滚动、分离、备份、转储规范。
- 不要重新发明轮子。
- 控制代码的质量。经常检查代码质量。代码质量检查工具包括:
IntelliJ IDEA的Code Inspection
CheckStyle
360 FireLine
PMD
FindBugs
SonarQube
- 防御性编码。
用怀疑的眼光审视所有的输入
善用Assert,Validate(推荐spring的Assert,apache common的Validate,google guava的Preconditions)
- 开发、重构要要良好的反馈机制
编译、统一构建、SonarQube
持续改进,持续重构,持续构建
持续重构是确保代码长期没人动,一动就出问题的有效手段。
持续重构的另一个目的是为了消除历史遗留包袱。