上帝对象

✍ dations ◷ 2025-09-08 22:28:03 #反模式

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

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

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

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

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

相关

  • drives动机(英语:motivation),在心理学上一般被认为涉及行为的发端、方向、强度和持续性。动机为名词,在作为动词时则多称作激励(英语:motivating)。在组织行为学中,激励主要是指激发人的动
  • 北方塘鹅Sula bassana北方塘鹅(学名:Morus bassanus),为鲣鸟科大鲣鸟属下的一个种类,又名北鲣鸟或憨鲣鸟,是北大西洋最大的海鸟。北方塘鹅主要生活在北大西洋,为候鸟随季节迁徙,冬季迁徙到美
  • 地磁场地磁场是源自于地球内部,并延伸到太空的磁场。磁场在地表上的强度在25-65微特斯拉(即0.25至0.65高斯)之间。粗略地说,地磁场是一个与地球自转轴呈11°夹角的磁偶极子,相当于在地球
  • 淡江大学林呈蓉 博士(文学院院长) 施增廉 博士(理学院院长) 李宗翰 博士(工学院院长) 蔡宗儒 博士(商管学院院长) 吴万宝 博士(外语学院院长) 王高成 博士(国际学院院长) 潘慧玲 博士(教育学院院
  • 朱里亚·克劳狄王朝儒略-克劳狄王朝(Julio-Claudian Dynasty,前27年-68年),罗马帝国建立者屋大维与其家族形成的王朝,是罗马帝国第一个王朝。儒略-克劳狄王朝建立者屋大维,其在结束罗马共和末期的混
  • 往复式发动机往复式发动机(reciprocating engine)亦称活塞发动机(piston engine),是一种利用一个或者多个活塞将压力转换成旋转动能的发动机。最常用的往复式发动机是利用汽油或者柴油燃料产
  • 伊莎贝拉·莫奈伊莎贝拉·莫奈(英语:Isabela Moner,2001年7月10日-)或称作伊莎贝拉·莫塞德 (英语:Isabela Merced),是一位美国女演员和歌手,她因为主演电视剧《高中前要做的一百件事 》和2017年的电
  • 威廉·斯托布威廉·爱德华·斯托布(William Edward Staub,1915年11月3日-2012年7月19日),是一名美国机械工程师,他在1960年晚期发明了第一台家用跑步机- PcceMaster 600。肯尼斯·H·库珀(英语:K
  • 顾栋臣顾栋臣(1869年-1913年) 字枚良,号恒斋,江苏无锡人,清末官员。清朝同治八年,顾栋臣生于江苏无锡。他是明朝东林党党首、东林书院创办人之一顾宪成的后代。光绪二十三年(1897年),顾栋臣
  • 石亭镇 (涞水县)石亭镇,是中华人民共和国河北省保定市涞水县下辖的一个乡镇级行政单位。石亭镇下辖以下地区:石亭村、山后村、板城村、北庄村、满金峪村、东龙泉村、北龙泉村、西龙泉村、士庄