zoukankan      html  css  js  c++  java
  • 设计模式相关

    六大设计原则

    1.单一职责原则

    一个类的职责越少,越容易维护。假如一个类有A、B两个职责,那么A需要改动的时候,就有可能影响到B。

    2.里氏替换原则

    使用父类的地方可以随意替换成子类,而不会出错。执行起来就是,子类可以扩展父类功能,但不能改变父类原有的功能。

    3.依赖倒置原则

    高层(调用方)不应该依赖底层(具体方法实现方),二者都应该依赖抽象。细节(实现类)应该依赖抽象(接口或抽象类)。原本高层直接调用底层是最直接的做法,但是当底层发生接口变化,高层也要跟着修改。这一原则执行起来就是,让高层底层都依赖接口类,限制底层的实现必须按找接口类规定的来,这样就可以大大减少高层的变动。

    4.接口隔离原则

    接口类 要尽量小。否则可能出现实现类需要去实现一些不需要的接口,这种情况就应该拆开另外一个接口类了。

    5.迪米特法则

    一个对象应该尽量少的了解其他对象。

    1. 尽量少的引用其他对象 。
    2. 只和直接对象交流。直接对象即 定义在成员变量、方法的输入输出参数中的对象,也就是可以很明显发现的对象。而方法体里的对象却隐藏住了。
    3. 减少对对象的了解。即少暴露方法给外部。

    6.开放封闭原则

    尽量通过扩展来实现功能,而不是修改原有代码。

    控制反转 IOC

    A对象依赖B对象,原本在A中创建B,再调用。反转后,B对象由外部注入(依赖注入)。这种情况下,B通常是会有一个父类,这样做可以随时替换和B同个父类的子类。而不是在A里面依赖一堆子类。

    参考

    面试官:你是如何理解Java中依赖倒置和依赖注入以及控制反转的?

  • 相关阅读:
    WINFORM 設計時 未能加载文件或程序集問題解決
    Remove row from generic datatable in C#(The given DataRow is not in the current DataRowCollection)
    questa.sim in the linux
    the io_printf
    how to search new file in linux
    the rld control core
    window's chkdsk
    tq
    the init state machine
    brazen out
  • 原文地址:https://www.cnblogs.com/nickcan/p/15776115.html
Copyright © 2011-2022 走看看