上帝对象

✍ dations ◷ 2025-12-09 19:44:04 #反模式

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

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

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

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

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

相关

  • 贝萨里翁贝萨里翁(Βασίλειος Βησσαρίων,Basilios Bessarion,1403年1月2日-1472年11月18日)文艺复兴时拜占廷人文主义学者,天主教会君士坦丁堡宗主教(1459年-1472年)。有时
  • 琉球大学琉球大学琉球大学(りゅうきゅうだいがく、University of the Ryukyus)位于冲绳县中头郡西原町的日本国立大学,简称为琉大。医学部与其他学部在不同的校区。以前学校设在那霸市
  • 第一性征生物性别(英语:sex)又称生殖性别或生理性别、生物中有许多物种可以划分成雄性及雌性,不过也有些会是间性。有性生殖是指雄性和雌性生物将其基因特质混合重组,繁衍后代的过程。配
  • 蒋士铨《清代学者像传》第一集之蒋士铨蒋士铨(1725年-1785年),字心余、苕生,号藏园,又号清容居士,乳名雷鸣。江西铅山县人,清代翰林、诗人。先世姓钱,居浙江湖州府长兴县(今湖州市长兴县)九里
  • 居维象居维象()是新大陆上已灭绝的一属嵌齿象科。居维象是以法国的乔治·居维叶(Georges Cuvier)来命名。它站立时高2.7米,外表像现今的象,但象牙则呈螺旋状。它最初是在北美洲演化而来,
  • 台湾-宍道褶曲带台湾-新畿褶皱带(Taiwan-Sinzi fold zone)或台湾-宍道褶皱带(日语:台湾-宍道褶曲帯)是位于中国大陆大陆棚东边的褶曲带,从台湾北部延伸到日本本州西部的日本海沿岸。,其中包括第三纪
  • 高身朴丽鱼高身朴丽鱼,为辐鳍鱼纲鲈形目隆头鱼亚目慈鲷科朴丽鱼属的其中一种,分布于非洲维多利亚湖流域,栖息深度可达10米,体长可达7.7公分,栖息在沙底质水域,生活习性不明。 维基物种中有关
  • 皮纽湖皮纽湖(Panixersee),是瑞士的水库,位于该国东南部,由格劳宾登州负责管辖,长1.5公里、宽0.3公里,面积4平方公里,海拔高度1,452米,水体容量7,300万立方米。
  • 海登赖希施泰因城堡海登赖希施泰因城堡(Burg Heidenreichstein)是奥地利下奥地利州的一座城堡。伯格海登赖希施泰因海拔556米。城堡最古老的部分可以追溯到12世纪。这座城堡最近由金斯基家族(Hous
  • 海陆控股海陆控股有限公司,简称海陆控股(英语:Hai Leck Holdings Limited,SGX:GG7),在1975年由Cheng Buck Poh创立,在新加坡、马来西亚、越南等承包鹰架、防腐蚀、隔热、耐火防火材料、一般