1. 设计模式的目的
编写软件过程中,程序员面临着来自 耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性 等多方面的挑战,设计模式是为了让程序(软件),具有更好的
1) 代码重用性 (即:相同功能的代码,不用多次编写)
2) 可读性 (即:编程规范性, 便于其他程序员的阅读和理解)
3) 可扩展性 (即:当需要增加新的功能时,非常的方便,称为可维护)
4) 可靠性 (即:当我们增加新的功能后,对原来的功能没有影响)
5) 使程序呈现高内聚,低耦合的特性
2. 七大设计原则
1.开闭原则:用抽象构建架构,用实现扩展细节
2.依赖倒置原则:高层模块不应该依赖于底层模块,二者都应该依赖其抽象
3.单一职责原则:单个接口或类不应该有多个职责,应该尽可能的划分职责,通过组合的方式,完成更为复杂的业务
4.接口隔离原则:一个接口不要包含过多的职责,应合理划分,跟单一职责原则相辅相成
典型场景:动物、人、鸟,人和鸟都会吃,人会走路,鸟会飞,应该把走路和飞这两个行为抽象成接口,通过组合的方式让人拥有走路的行为,让鸟拥有飞的行为。再细划分,人有多个走路姿势,鸟有多个飞行方式,可以分别继承走路和飞的抽象行为扩展其具体的行为
5.迪米特法则:也就最少知道原则,一个对象尽量让其它对象保持最少的了解
典型场景:我点外卖,我只关心外卖员,不关系具体的店。我的类中只依赖外卖员,不会依赖具体的店。是不是静态代理。
6.里氏替换原则:在引用父类的地方,都可以替换为其子类。从而可以实现子类间的动态切换。换句话说就是要有面向接口的编程思维。结合“开闭原则”,完美
7.合成复用原则:多用组合,少用继承
原文链接:https://blog.csdn.net/u012844098/article/details/88621337
来源:https://www.cnblogs.com/pekit/p/12489062.html