常见的设计模式:
- 工厂模式:将对象的创建过程封装起来,通过工厂方法来获取对象实例。
- 单例模式:确保一个类只有一个实例,并提供全局访问点来访问该实例。
- 装饰器模式:动态地为对象添加额外的职责,避免继承关系的复杂性。
- 观察者模式:当一个对象的状态发生改变时,它的所有依赖对象都会收到通知并自动更新。
- 适配器模式:将一个类的接口转换成客户端所期望的另一个接口,使得原本不兼容的接口能够协同工作。
- 模板方法模式:定义一个算法的骨架,将一些步骤延迟到子类中实现。
- 策略模式:定义一系列算法,将每个算法封装起来,使它们可以互换。
常见的软件设计原则:
- 单一职责原则(SRP):一个类应该只有一个引起它变化的原因。
- 开闭原则(OCP):软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。
- 里氏替换原则(LSP):任何基类可以出现的地方,子类一定可以出现。
- 接口隔离原则(ISP):不应该强迫客户端依赖它们不需要使用的接口。
- 依赖倒置原则(DIP):高层模块不应该依赖低层模块,两者都应该依赖抽象。
- 迪米特法则(LoD):一个对象应该对其他对象有尽可能少的了解,尽可能地减少对象之间的耦合度。
这些设计模式和软件设计原则在实际开发中可以帮助开发者提高代码的可维护性、可扩展性、可重用性等方面的质量。