上帝对象

✍ dations ◷ 2025-11-22 21:07:34 #反模式

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

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

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

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

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

相关

  • 木糖代谢D-木糖是一种五碳的醛糖(戊糖、单糖),可被多种微生物催化代谢为有用的产物。已知至少有四种木糖代谢的途径:1,氧化还原途径,存在于真核微生物中;2,异构酶途径,存在于某些原核生物中;3,W
  • 乙基乙基是一个烃基官能团,化学式为—C2H5,简写为—Et(Ethyl)。最简单的乙基化合物为乙烷(C2H6),乙基与氢原子相连。其他包括氯乙烷、溴乙烷、乙醇、乙胺和硝基乙烷等。乙基化指向分子
  • 月球探测中国探月工程(英语:China Lunar Exploration Project 或 Chinese Lunar Exploration Program,缩写:CLEP)亦称嫦娥工程,是中国国家航天局启动的第一个探月工程,于2003年3月1日正式启
  • 奉俄协定中华民国东三省自治政府与苏维亚社会联邦政府之协定六条,简称奉俄协定,订立于1924年9月20日,是以奉系军阀张作霖为首之东三省政府和苏联政府之间缔结签订以中东铁路(又称为东支
  • 宁波诺丁汉大学宁波诺丁汉大学(英语:University of Nottingham Ningbo China)是一所校址位于中华人民共和国浙江省的英国诺丁汉大学独立校区,也是中国教育史上第一个外方大学,由于中国政策影响(
  • 四氯化钍四氯化钍是一种无机化合物,化学式为ThCl4,有放射性。四氯化钍可由金属钍、碳化钍或氢化钍和氯气反应得到:用氯气作用于二氧化钍和碳的混合物也能得到氯化钍:四氯化钍在潮湿环境
  • 人造生命人造生命,又称合成生命,是近期出现的生物技术术语,指利用生物技术干预、改变遗传密码从而产生新的生命个体的研究。创造人造生命是于合成生物学或探索生命的起源领域工作的科学
  • 鸣梁海战 (电影)《鸣梁海战》(韩语:명량/鳴梁 ;又译《鸣梁:旋风之海》)是一部2014年上映的韩国古装战争电影,首次将万历朝鲜之役时期李舜臣率军以十二艘板屋船击退三百三十余艘日舰,取得胜利的鸣梁
  • 崔世珍崔世珍(韩语:최세진,1473年-1542年),字公瑞(공서),韩国李氏朝鲜时期的著名语文学家、教育家、翻译家。忠清北道槐山(괴산)人。崔世珍于燕山君时代(연산군,1494年-1509年)之1503年登科,历任
  • 五磷酸钆五磷酸钆是一种无机化合物,化学式为GdP5O14,可简写为GdPP。它是单斜晶体,晶体中Gd3+的配位数为8。它也能生长为正交晶系晶体,或由于孪晶现象以拟正交晶系生长。五磷酸钆可由氧化