加载中...

上帝对象(God Object)又称上帝类(God Class),是一种经典反模式:一个类集中了系统中过多的职责与数据,几乎"无所不知、无所不能",其他对象都沦为它的附庸。
典型症状包括:类的代码行数与方法数远超同项目其他类、名字空泛(如 Manager、Util、Context、XXXService)、被几乎所有模块依赖、任何需求变更都要改它、单元测试难以编写。它直接违反单一职责原则与高内聚低耦合的设计目标。
多由长期在同一个类上"顺手加一点"累积而成,缺乏重构与代码评审是主要诱因。
通过提炼类(Extract Class)、按职责拆分、引入门面或领域服务等重构手法分解;识别时可借助静态分析工具对类规模与依赖扇入扇出的度量。在嵌入式等特殊场景,少数集中式设计有时被有意保留。

登录 后参与讨论
暂无讨论,来发表第一条评论吧