抽象工程模式——解决switch语句的冗杂问题特例模式——解决异常处理与业务逻辑耦合的问题适配器模式——将同一个对象的两个不同实现整合模板方法模式——消除重复;given-when-then约定?策略模式——消除重复