(软件工程/面向对象设计)“上帝对象”:指一个类/对象承担了过多职责、掌握了系统中大量数据与行为,几乎“无所不知、无所不能”,从而导致代码高度耦合、难以维护与测试的反模式(anti-pattern)。也常被称为“God class”。
/ɡɑːd ˈɑːbdʒɛkt/
Our app has a god object that handles UI, database calls, and business logic.
我们的应用里有一个“上帝对象”,它同时处理界面、数据库调用和业务逻辑。
As the project grew, the controller became a god object, accumulating responsibilities that should have been split into smaller services and modules.
随着项目变大,这个控制器逐渐变成了“上帝对象”,把本应拆分给更小的服务和模块的职责都堆在了一起。
“God object”由“god(上帝)+ object(对象)”构成,是一种比喻说法:像“上帝”一样全知全能的对象,掌控过多信息与权力。该术语常用于批评设计中职责未分离、边界不清的问题,与面向对象设计原则(如单一职责)相冲突。