上帝对象

✍ dations ◷ 2025-12-09 11:58:21 #反模式

在面向对象编程领域, 一个上帝对象(God object)是一个或者的对象。 上帝对象是反面模式的一个例子。

结构化编程背后的基本概念是一个大型的问题应该被分解成为多个较小的问题中(分而治的策略)并且针对每个较小的问题提出解决方案。当每个小问题都得到解决后,大问题本体就得到了解决。因此对象应该知道的一切就是。类似的,对象应该解决的问题是它问题。

基于上帝对象编写的代码并不遵从上述的方式。取而代之的是程序的整体功能都被编程到一个单一的"了解全部"的对象当中,这个对象维护了整个程序的大部分信息并且提供了操作数据的大部分方法。所以这个对象持有过多的数据以及负责过多的方法,它在程序中的角色就如同上帝一般。不同于编写直接在彼此之间进行交互的对象,其他程序中的对象都依赖于这个上帝对象获得信息以及交互。由于上帝对象被过多的其他代码所引用,相比一个进行了均匀切分的程序而言维护变得更加的困难。

在过程化编程语言中没有使用子程序或者过多的使用了全局变量进行信息存储都是在面向对象编程编程中的上帝对象的一个类似物。

创造一个上帝对象通常都被认为是一个不好的编程实现,这种技术偶尔会在紧耦合的编程环境中(如微处理器)被使用,在这些环境中微小的性能提升以及控制集中相比于维护以及编程的优雅而言是更加重要的。

相关

  • 洋菜琼脂,亦称寒天、琼脂胶、海菜胶、海燕窝、藻胶、石花菜、牛毛菜、大菜、菜燕等,是从海藻植物中提取的胶质。由日本美浓屋的太郎左卫门在17世纪60年代首次提取。可作为鱼胶的代
  • 国语罗马字国语罗马字是一套官语汉字拉丁化方案,曾是中华民国国家标准。它和通字方案一样使用复杂的拼写规则来标示声调,不像其他方案要用到调号或数字。因为以拼写来标调,国语罗马字的拼
  • 威廉姆斯敦威廉斯敦(Williamstown)是美国马萨诸塞州伯克希尔县的一个镇。
  • 老年斑老年斑(也称为 神经炎性斑)是指在大脑灰质中,处在胞外的β-淀粉样沉积物。 。这种老年斑沉积物可能与退化神经结构、过多的小神经胶质和星细胞 有关。 这些沉积物也可能是衰老
  • 屠夫屠宰指杀死家畜、家禽,产出供人食用的肉类的过程。专门用来屠宰的地方称为屠宰场或屠宰厂,专业人员旧时也称作屠夫或屠户。因为肉类食品中毒是很严重的问题,各国屠宰均有严格的
  • 空袭东京东南亚地区:缅甸:西南太平洋地区:北美地区:日本:满洲地区:空袭东京,亦常称杜立特空袭(英语:Doolittle Raid),是美国于第二次世界大战期间的1942年4月18日时,向日本本土首次进行的空中轰
  • 基因连锁群基因连锁群(linkage group),位于一个染色体上的所有基因。但个体基因连锁群的数目和染色体的对数相等。例如果蝇的染色体有四对,基因连锁群的数目即为4,因为要由共轭的一对基因控
  • 阮福绵宠阮福绵宠(越南语:Nguyễn Phúc Miên Sủng/.mw-parser-output .han-nom{font-family:"Nom Na Tong","Han-Nom Gothic","Han-Nom Ming","HAN NOM A","HAN NOM B","Ming-Lt-HKS
  • 艾哈迈德·阿拉比艾哈迈德·阿拉比(阿拉伯文:أحمد عرابي‎,1841年4月1日-1911年9月21日)是前埃及军官。早年深受哲马鲁丁·阿富汗尼思想的影响。1875年加入青年埃及协会。1879年创立祖国
  • 不充分决定论在科学理论中,不充分决定论是指现有的证据未能充分地、圆满地指出某个结论应当获得接纳。以逻辑论解释,即是指存在两个或多于两个命题,使该命题为成立现有证据A的充分条件,但没