上帝对象

✍ dations ◷ 2025-11-21 20:14:22 #反模式

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

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

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

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

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

相关

  • 肠杆菌噬菌体T2T2噬菌体(学名:Enterobacteria phage T2)是一种属于T4噬菌体属的噬菌体病毒,专门感染和杀死大肠杆菌。其病毒体内含DNA,DNA的组成次序包括有线状双股、末端冗余(terminally redund
  • 月经不调月经失调,又称月经不调,指月经周期或出血量的异常。
  • 轮烯轮烯(Annulene)指双键完全共轭的单环多烯烃类。轮烯的化学通式可以表示为CnHn(当n为偶数时)或CnHn+1(当n为奇数时)。轮烯命名时,以轮烯作为母体名,把环内碳原子总数用带方括号的阿拉
  • 马步马步,中国武术名词。是坐马与步法之统称。坐马是中国武术门派所采用的基本站桩功力训练。通过练习“坐马”,又称“站桩”主要是为了调节“精、气、神”,完成对气血的调节、精神
  • 埃切维里亚路易斯·埃切韦里亚(西班牙语:Luis Echeverría;西班牙语发音:.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Uni
  • 中国杭州西湖博览会西湖博览会是浙江省杭州市每年举办一次的大型商贸展览会。起源于1929年。第一届西湖博览会是中国会展史上一次规模较大影响深远的展销会。同时,它也是浙江经济走向世界的尝试
  • 2013年Gaon专辑冠军作品列表2013年Gaon专辑冠军作品列表《2013年Gaon专辑冠军作品列表》主要列举2013年度曾经登上“Gaon Chart”专辑周榜、月榜及年榜冠军的音乐专辑作品及其资料。5日、12日 I GOT A
  • 吕太后 (明兴宗)吕太后(1359-1406年),寿州人,明朝明兴宗朱标的继妻。吕氏是大臣吕本之女,太子朱标妾室。她的生年,何时成为太子妾室,已无法考证。1377年,吕氏生下长子(朱标次子)朱允炆。太子妃常氏在13
  • 朱塞佩·马尔图齐朱塞佩·马尔图齐(意大利语:Giuseppe Martucci,1856年1月6日-1909年6月1日),意大利作曲家,钢琴家,指挥家,音乐教育家。他的父亲是一位小号手,马尔图齐自幼学习钢琴,后进入那不勒斯音乐
  • 廖士翔 (主播)廖士翔(11月4日 - ),现任年代新闻台、壹电视新闻台记者兼任主播。