美文网首页
设计模式(一)设计原则

设计模式(一)设计原则

作者: 天色将变 | 来源:发表于2019-06-23 10:58 被阅读0次
    让变化的与不变的分开。
    • 定义:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
    • 优势:把会变化的部分取出并“封装”起来,好让其他部分不会收到影响。
    针对接口编程
    • 定义:针对接口编程,而不是针对实现编程。
    • 解释:其实就是多态,父类的引用指向子类的对象。针对接口或父类编程。
    多用组合,少用继承
    • 定义:多用组合,少用继承
    • 解释:使用组合建立系统具有很大的弹性,不仅可将算法族封装成类,更可以“在运行时动态地改变行为”,只要组合的行为对象符合正确的接口标准即可。
    松耦合
    • 定义:为了交互对象之间的松耦合设计而努力
    • 解释:松耦合的设计之所以能让我们建立有弹性的OO系统,能够应对变化,是因为对象之间的互相依赖降到了最低。
    开放关闭原则
    • 定义:类应该对扩展开发,对修改关闭
    • 解释:我们的目标是允许类容易扩展,在不修改现有代码的情况下,就可以搭配新的行为。如能实现这样的目标,有什么好处呢?这样的设计具有弹性,可以应对变化,可以接受新的功能来应对改变的需求。但是并不是所有的代码都要遵循该原则,你需要把注意力集中在设计中最有可能改变的地方,然后应用该原则
    依赖倒置原则
    • 定义:要依赖抽象,不要依赖具体类。
    • 解释:不能让高层组件依赖低层组件,而且,不管高层组件或低层组件,都应该依赖于抽象。高层组件依赖于抽象类A,A的子类依赖于A。
    最少知识原则
    • 定义:只和你的密友谈话。
    • 解释:在设计系统时,不要让太多的类耦合在一起,免得修改系统中的一部分,会影响到其他部分。如果许多类之间相互依赖,那么这个系统就会变成一个易碎的系统,它需要花许多成本维护,也会因为太复杂而不容易被其他人了解。
    好莱坞原则
    • 定义:别调用我们,我们会调用你
    • 解释:低层组件绝对不能直接调用高层组件,但是低层组件可以参与计算,但是是由高层组件控制何时以及如何让低层组件参与。
    • 与依赖倒置原则的区别:依赖倒置原则教我们尽量避免使用具体类,而多使用抽象。而好莱坞原则是用在创建框架或组件上的一种技巧,好让低层组件能够被挂钩进计算中,而且又不会让高层组件依赖低层组件。两者的目标都是在于解耦,但是依赖倒置原则更加注重如何在设计中避免依赖。好莱坞原则教我们一个技巧,创建一个又弹性的设计,允许低层结构能够互相操作,而又防止其他类太过依赖它们。

    相关文章

      网友评论

          本文标题:设计模式(一)设计原则

          本文链接:https://www.haomeiwen.com/subject/akqiqctx.html