一个模块反复重构多次的原因有哪些
外因:
1. 需求复杂
2. 需求反复
3. 公共模块缺不够底层
内因:
1. 每次重构没有形成足够的沉淀. 没有分清底层和上层逻辑
2. 对需求发展评估不足
3. 重构不彻底. 模块壁不够清晰. 名存实亡. 留有一些尾巴被后续逻辑利用.
4. 重构周期内被污染
5. 伪重构: 重构重心在分割代码而非抽象
6.
How To Do:
1. 对底层的重构, 是要集中最大的耐心和精力, 所有的代码都是散发的, 底层如果偷懒留有尾巴, 必然会导致上层加以利用
2. 底层最核心的是数据抽象和管理, 数据流 -> 控制流. 设计好数据的存取, 分块
3. 分割的代码, 是重构的表面工作, 是重构的第一步, 但不应是重构的产物. 分割后, 逐个进行必要的抽象.才是衡量重构深度,地基扎实度的唯一标准
4. 上层的污染如果不是沿着底层尾巴渗入底层, 可以认为是浮层, 不需要特别在意. 重点是向底层渗入的通道, 要堵死, 提供合理的途径
5. 需求发展的方向, 要从全局和更高的业务抽象角度去思考. 不要脱离业务进行代码重构抽象. 代码的抽象方向是受业务底层机制的原理指引的.
By wmalloc