/**
* 反模式——软件架构重构 2
* @软件开发性反模式
* @软件重构
* 先重构再进行优化,优化往往是在架构上面做折中。
* 先进行重构有助于把优化的代码与软件的主体进行分割开
* @超类抽象 {面向对象}
* 应用于两个或多个相似的类
* 相似的方法签名转换为通用的方法签名
* 建立一个抽象超类
* 修改代码以合并选择的实现
* 把通用方法迁移到抽象超类
*
* @条件消除
* 在类的结构和行为严重依赖于某个条件语句时可以进行重构
* 根据每个条件建立新的子类
* 把操作代码从条件分支迁移到子类中
* 调整对类的引用
* 最后这些变化造成的修改进行适应
*
* @聚合抽象
* 通过重新组织类的关系来调整改善他们的组织和可扩展性
* 继承关系转变为聚合关系
* 迁移聚合类到构件关系
* 迁移构件关系到聚合关系
*
* @开发性反模式摘要
* The blob(胖球)
* 一个对象的职责过大,其他对象的职责只是数据的处理和传输
* 重构来分担职责,对职责进行充分的分散 ,以及隔离变化造成的影响
*
* Continuous Obsolescence(持续过时)
* 技术变化和过时变化的脚步平衡,成功进行互操作兼容性的加护和实施。
*
* Lava flow
* 死代码和被遗忘的设计被冻结在持续不断的设计迭代中
* 进行配置管理
* 消除死代码,提供质量
*
* Ambiguous viewpoint
* 面向对象的分析和设计常常没有明确的表达清楚模型所应该表达的角色
* OOA&D——接口和实现细节之间进行基本的隔离,面向对象的基本效益之一
*
* Functional Decomposition 功能分解
* 产生太过复杂的”聪明“的方法
*/
反模式——软件开发性反模式
最新推荐文章于 2022-07-11 14:51:54 发布