在软件工程中，一个反面模式（anti-pattern或antipattern）指的是在实践中经常出现但又低效或是有待优化的设计模式，是用来解决问题的带有共同性的不良方法。它们已经经过研究并分类，以防止日后重蹈覆辙，并能在研发尚未投产的系统时辨认出来。Andrew Koenig在1995年造了"anti-pattern"这个词，灵感来自于GoF的《设计模式》一书。而这本书则在软件领域引入了“设计模式”（design pattern）的概念。三年后antipattern因《AntiPatterns》这本书而