1. (业务) 搞清楚,哪些是你们的核心能力,优先在核心能力的功能上进行质量保障,要不然容易在不重要的地方花费精力,投入没有足够的回报的话,就是浪费,无法持续下去
2.1. (技术) springboot 的话,控制反转 和 依赖注入用起来,这个是基础(解决耦合的基石),有了这个基础的话,可以在逐步的把核心代码抽离到单独的类里面,这样的话,就可以添加测试,逐个模块的确保正确性
2.2. (技术)代码这么糟糕,TDD 是没有时间可能性的了,但是可以试试 BDD ,加测试的好处是,将来改动的时候,单元测试一跑就知道破坏到旧的业务了,可以马上把影响给纠正下,你可以想想下,一个功能,提测然后 QA 告诉你出问题,你再重新改重新提测要花多少时间。
不过当前会付出额外的时间成本
3 (权衡)分层、面向对象设计和 DDD 之类的要不要整起来,就看你负责的业务的价值,业务价值高,就会希望质量也高,想要质量高,必须避免面条式代码(面条式代码当前大多不会有 bug ,但是一次次迭代的过程中,就会有 bug ) |