幽灵 (反面模式)

✍ dations ◷ 2025-07-23 15:11:28 #反模式

在程式设计中,幽灵(poltergeist)是指一些生命期很短,没有内部状态的物件,这些物件是只用来进行初始化或调用其他生命期较长物件的方法。幽灵是一种反面模式。原始定义是由 Michael Akroyd 于1996年在Object World West Conference中提出:

幽灵物件常常可以由其名称来识别:例如 "manager_"、"controller_"或"start_process"等。

有时幽灵物件的创建是因为程式设计者预期需要使用一个复杂的架构,例如在命令模式下同一个方法需适用于客户端及调用端,因此程式设计者将其分为二个阶段,只是复杂的架构后来没有实现,只留下幽灵物件。不能将幽灵物件和其他在MVC等设计模式中使用,生命期较长,有状态的物件混为一谈。

若要移除幽灵物件,可直接删除物件,将其机能直接加入要调用幽灵物件的物件中,加入机能的方式可以透过继承或是混入(英语:mixin)的方式。

相关

  • 生物医学生物医学(英语:Biomedical sciences or Biomedicine)是医学的分支,负责将生物技术和其他自然科学理论应用于临床实践。 生物医学主要运用生物学和生理学的知识。 生物医学与健
  • 普立马结合型雌激素(英语:Conjugated estrogens,旧误译共轭雌激素),也称妊马雌酮,商品名称为普立马(Premarin,取自pregnant mares' urine的缩写),是一种常用雌激素药物,惠氏制药公司生产,是一
  • 科乐美科乐美(日语:コナミ),是日本著名的电子游戏制作商,于1969年3月21日在大阪府成立,目前总部设在东京都。“KONAMI”一名来自科乐美创办人上月景正、仲真良信、宫迫龙雄的各自姓氏的
  • 联合国大会181号决议联合国大会181号决议 (分治决议),即联合国巴勒斯坦分割方案,于1947年11月29日在联合国大会通过。该决议提出了两个临时国家的建立,一个是犹太国,另一个是阿拉伯国。该决议也建议了
  • 威尔士第四台威尔士第四台(威尔士语:Sianel Pedwar Cymru,简称:S4C)是英国威尔士地区的一家电视台,于1982年11月1日开播。2010年类比讯号停播前,S4C有两条讯号:类比讯号以双语(威尔士语及英语,其中
  • 铡刀车门铡刀式车门即原属于超级跑车车门的一种样式。将车门开启后,呈现出‘断头台展开的样貌’而得名。固定车门的活动机件置身于车体A柱部位,从下方往上方开启车门后,使乘坐人员得以
  • 东莱城之战釜山镇 – 多大浦 – 东莱城 – 尚州 – 忠州弹琴台 – 玉浦 – 泗川 – 临津江 – 唐浦 – 唐项浦 – 闲山岛 – 龙仁 – 梨峙 – 平壤 – 釜山浦 – 北关
  • 反常凝析反常凝析(Retrograde Condensation)是在压力降低(或者温度升高)的时候,气体凝析为液体的现象。这现象与凝析(凝结)是相反的,因此得名。若二种气体在固定温度及压力下,且其状况还没到
  • 黄乔歆黄乔歆(Yuri Huang,1986年4月11日-),艺名瑶瑶(Yao Yao),台湾桃园市新屋区客家人,女艺人,毕业于中坜家商美容美发科,黑涩会美眉成员之一,2005年10月3日首次亮相。在学时曾是田径队队员,平
  • 卢菲拉湖卢菲拉湖(法语:lac Tshangalele,lac Lufira)是刚果民主共和国东南部的人工湖,位于加丹加省利卡西以东约20公里海拔1,100米的盆地,在1926年兴建水坝形成,面积362.5平方公里,平均深度