设计异味

✍ dations ◷ 2024-09-19 09:09:20 #计算机编程

设计异味是计算机编程领域,设计所用结构违背了基本设计原则并对设计质量有负面影响。这个术语源自马丁·福勒在《重构-改善既有代码的设计》一书中描述的代码异味。

不同作者对“异味”(smell)有不同的定义:

设计异味指示了积累的设计负债(技术负债的主要维度)。Bug与未实现功能不算是设计异味。设计异味产生于很差的设计决策,使得设计脆弱、难于维护。在一个软件系统中辨别设计异味,应用适当的重构去除异味,避免积累技术负债,是好的实践。

在确定特定结构或决策是否算作设计异味时,上下文环境(如问题清单、设计生态圈、平台等)扮演了重要角色。很多时候,由于上下文环境所限,只好容忍设计异味。

面向对象设计的SOLID五大原则:单一功能原则:一个类只应有一个“改变的原因”(即功能);开闭原则:软件实体(类、模块、函数等)应当对扩展是开放的,对修改是关闭的;里氏替换原则:子类型能替换基类型;依赖反转原则:高层模块不应依赖于低层模块,二者应当依赖于抽象。抽象不应依赖与细节。细节应当依赖于抽象。接口隔离原则:类应当有胖(fat)接口,可被分为方法的分组。每个分组服务于不同的客户集。客户不应当知道这些分组是在同一个类中。

相关

  • 温度标准温度标准,简称温标,是以量化数值,配以温度单位来表示温度的方法。它也是温度计进行刻度的根据。只要以物理方法使两个不同的温度在环境中产生,并测量再予以不同数值。即为温标。
  • 环绕数在数学中,环绕数(linking number)是描述三维空间中两条闭曲线环绕的一个数值不变量。直观上,环绕数表示每一条曲线缠绕另一条曲线的次数。环绕数总是整数,但有可能取正数或负数,取
  • 粤西粤西(Western region, Guangdong),又称广东西翼、湛茂阳城市带、湛茂阳临港经济圈,是广东省内的区域经济概念,是广东按照地理位置和经济特点划分的四大经济区域之一(珠三角、粤东
  • 特效特效,是指电影或剧集在拍摄制作或后期制作的过程中,当有无法使用的自然环境或人物表现的场景和情节时,将采用特殊的技术手段和方法获得最终画面的技术。与特技等同。特效技术是
  • 兵器工业部中华人民共和国兵器工业部(1982年5月4日-1986年11月)。1963年,第五机械工业部由第三机械工业部分出。1982年,第五届全国人民代表大会常务委员会第二十三次会议审议了国务院机构改
  • 威廉·科尔比威廉·伊根·科尔比(英语:William Egan Colby;1920年1月4日-1996年4月27日)是一位美国情报官员,1973年9月至1976年1月担任中央情报总监。
  • 电的流体理论电的流体理论假定,电磁学里的各种现象可以用电流体来表述。在十八世纪,双流体理论与单流体理论是两种著名的流体理论。查尔斯·笃费(英语:Charles Du Fay)做实验于1733年发现,假若
  • 纳韦尔瓦皮湖纳韦尔瓦皮湖(西班牙语:Lago Nahuel Huapí)是阿根廷巴塔哥尼亚北部内格罗河省和内乌肯省的湖泊,座标41°05′25″S 71°20′08″W / 41.09028°S 71.33556°W / -41.09028; -71
  • 龙齿龙齿、龙牙或龙牙桩(英语:Dragon's teeth),是一种针对装甲车以及坦克的防御工事,会和捷克刺猬一并配合。这种防御工事应用地区十分广泛,大西洋壁垒和齐格菲防线,以及马奇诺防线(德军
  • 金马奖奖项列表台湾金马奖奖项,分为现行奖项及已停办奖项。最佳纪录片策划最佳纪录片导演最佳纪录片摄影最佳新闻片编导最佳新闻片摄影