设计异味

✍ dations ◷ 2025-08-10 16:06:13 #计算机编程

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

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

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

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

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

相关

  • 光敏感感光性亦称光敏感度或光敏性(英语:Photosensitivity),是指一个物体在接收光子(多数时候为可见光)时的作用量。在医药学领域,该属于被用作指代皮肤对于光的不正常反应,通常又分为光照
  • UNII特殊成分标识(UNique Ingredient Identifier,UNII)是一种公用、免费、独特、明确、非语义的分子结构资讯识别系统,本物质注册系统(SRS)由美国食品药品监督管理局(FDA)及美国药典(USP)
  • 中国殡葬史中国境内流行许多葬礼,有土葬、火葬、水葬、天葬、崖葬、悬棺葬、塔葬、海葬、树葬、花葬等。汉族为代表葬礼是土葬,在古代,土葬最能表现阶级和等级的差别,故夏,殷等朝代都用土葬
  • 天京事变“天京之变”又称“天京事变”,也有学者称作“杨(杨秀清)韦(韦昌辉)内讧”或“杨韦事件”,是一次太平天国领导层的严重内讧。发生于清朝后期的1856年,地点在首都天京(今江苏南京),东王
  • 普尔贝图电位-pH图,也称电势-pH图、稳定区图、普尔贝图,是表示系统的电极电势与pH关系的图,它在电化学中有很重要的意义。最早由比利时学者马塞尔·普尔贝(Marcel Pourbaix)等人在20世纪3
  • 身土不二身土不二本是被引用作为佛教用语,指“身”与“土”两者无法分开,其中“身”意指至今的行为的结果(正报),而“土”则意指身处的环境(依报)。后来,身土不二成为支持本土生产食品的一个
  • 老挝人民革命党中央委员会总书记老挝人民革命党中央委员会总书记是老挝人民革命党的最高负责人,也是老挝人民民主共和国实际上的最高领导人。从1991年(五大)到2006年(八大),总书记职务曾经改为“中央委员会主席”
  • 上山文化上山遗址位于中国浙江省浦江县黄宅镇渠南村,是浦阳江上游重要的新石器时代早期文化遗址,是中国迄今发现的年代最早的新石器时代遗址之一。2006年列入第六批全国重点文物保护单
  • 代杜利亚乌帕齐拉代杜利亚(孟加拉语:তেতুলিয়া)是孟加拉国的一个乌帕齐拉,位于朗布尔专区的班乔戈尔县。代杜利亚乌帕齐拉位于孟加拉国最北端,其东、西、北部均与印度接壤,东南部与班乔戈
  • 大写大写可能指以下的几种意思: