摘要: 简介 接口隔离原则(Interface Segregation Principle,ISP)是面向对象设计中的一项原则,它强调一个类对另一个类的依赖应该建立在最小的接口上,而不是依赖于不需要的接口。换句话说,一个类不应该强迫其他类依赖它们不需要的方法。 主要思想: 接口粒度:接口应该具有最小的粒度, 阅读全文
posted @ 2024-02-29 16:40 秃头星AI 阅读(111) 评论(0) 推荐(0)
摘要: 简介 里氏替换原则(Liskov Substitution Principle,LSP)是面向对象设计中的一个重要原则,由芭芭拉·利斯科夫(Barbara Liskov)在1987年提出。它是继承原则的一种深化和发展,强调子类必须能够替换掉父类并且不影响程序的正确性。 里氏替换原则的定义为:“如果对 阅读全文
posted @ 2024-02-29 16:31 秃头星AI 阅读(637) 评论(0) 推荐(0)
摘要: 简介 开闭原则(Open/Closed Principle)是面向对象设计中的一个重要原则,由勃兰特·梅耶(Bertrand Meyer)于1988年提出。该原则指导着设计者编写易于扩展和维护的软件系统。 开闭原则的定义为:“软件中的对象(类、模块、函数等)应该对扩展开放,对修改关闭。”简而言之,这 阅读全文
posted @ 2024-02-29 16:22 秃头星AI 阅读(157) 评论(0) 推荐(0)
摘要: 简介 单一职责原则(Single Responsibility Principle,SRP)是面向对象设计中的一个重要原则,它强调一个类应该只有一个责任。换句话说,一个类应该只有一个引起它变化的原因。这个原则最初由Robert C. Martin在他的著作《敏捷软件开发:原则、模式与实践》(Agil 阅读全文
posted @ 2024-02-29 16:13 秃头星AI 阅读(129) 评论(0) 推荐(1)
摘要: 简介 访问者模式(Visitor Pattern)是一种行为型设计模式,用于在不改变被访问元素的类的前提下,定义对这些元素的新操作。该模式通过将算法与数据结构分离,使得可以在不修改数据结构的情况下,增加新的操作。 结构 访问者(Visitor):定义了对于每个元素类所要执行的操作。这些操作可以是不同 阅读全文
posted @ 2024-02-29 15:14 秃头星AI 阅读(91) 评论(0) 推荐(0)
摘要: 简介 模板方法模式(Template Method Pattern)是一种行为设计模式,它定义了一个操作中的算法的骨架,将一些步骤延迟到子类中实现。这样,可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 结构 抽象类(Abstract Class):定义了一个模板方法,其中包含算法的骨架,以 阅读全文
posted @ 2024-02-29 14:44 秃头星AI 阅读(47) 评论(0) 推荐(0)
摘要: 简介 策略模式(Strategy Pattern)是一种行为设计模式,它允许在运行时选择算法的行为。这种模式定义了一系列算法,将每个算法封装起来,并使它们可以相互替换。策略模式使得算法可以独立于其使用者而变化,使得使用者可以根据需要在运行时选择适当的算法。 以下是策略模式的一般结构和示例代码: 结构 阅读全文
posted @ 2024-02-29 14:33 秃头星AI 阅读(73) 评论(0) 推荐(0)
摘要: 简介 状态模式(State Pattern)是一种行为型设计模式,它允许对象在内部状态发生改变时改变它的行为。这种模式把对象的状态从对象中分离出来,将不同状态下的行为封装到不同的状态类中,使得状态转换时可以简化对象的行为控制,并且使得状态间的切换更加灵活。 结构 Context(上下文):维护一个状 阅读全文
posted @ 2024-02-29 14:21 秃头星AI 阅读(62) 评论(0) 推荐(0)
摘要: 简介 观察者模式(Observer Pattern)是一种行为型设计模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听并且被自动通知某一个主题对象的状态变化,以便做出相应的反应。 结构 观察者模式包括以下几个角色: Subject(主题):被观察的对象,它维护了一系列观察者对象,并提供添加 阅读全文
posted @ 2024-02-29 13:57 秃头星AI 阅读(61) 评论(0) 推荐(0)
摘要: 简介 备忘录模式(Memento Pattern)是一种行为型设计模式,它允许在不暴露对象实现细节的情况下捕获并保存其内部状态,以后可以将其恢复到先前的状态。备忘录模式通常用于需要在不破坏封装性的情况下保存和恢复对象状态的情景。 结构 备忘录模式包括以下几个角色: Originator(原发器):负 阅读全文
posted @ 2024-02-29 13:41 秃头星AI 阅读(66) 评论(0) 推荐(0)