马上要重构一个项目,但是涉及的点和业务方都不少,一时间不知道从哪里下手和规划。大佬们有什么重构的经验或者相关的书籍可以分享一下?也是可以代码技巧,代码设计,架构设计方面的分享对我也很重要!! 重构, 代码, 架构, 分享
操作角度:重写子模块,切流,把旧模块饿死后下线。 子模块划分:简单业务后台,调用依赖低于两位数的按业务拆分就行,复杂系统按 DDD 思想基于领域拆好界限上下文,可以参考这个系列文章 https://tkstorm.com/2021/07/%E9%A1%B9%E7%9B%AE%E5%AE%9E%E8%B7%B5ddd%E5%90%8E%E7%9A%84%E4%B8%80%E4%BA%9B%E6%80%9D%E8%80%83/。项目结构组织按照顺手得来,不必非要照抄,数据格式转来转去徒增工作量,保持高内聚低耦合的代码设计思想,找个技术好的单兵做好通用 sdk 开发。 项目进度把控方面:不建议成立技术专项试图一次花半年全改,这样很难体现你的收益。列好要改的点,每次业务变更的时候多留点 buffer 做重构,做好里程碑奖励和组织激励工作。 最后推荐阅读《凤凰架构》,再好的架构最终都会腐化。接受会腐化的事实,做好防范工作(代码合入审查),保持组织人员流动健康和业务正常推进(不要 996push ),持续重构和优化。
1. 方法支持: C4 架构、设计模式(比如服务适配、绞杀、CQRS 等) 2. 书籍参考 《重构 改善既有代码的设计》、《代码整洁之道》 3. 重构的工具和支持 最好项目有完善的冒烟用例和单元测试,如果有自动化用例,那就大胆重构。以便确定修改后的项目是符合原有的需求的 4. java 项目的代码质量检查工具 pmd 、checkstyle