zoukankan      html  css  js  c++  java
  • 一句话总结面相对象6大原则系列

    1.单一职责
    引起类变化的原因不能多于一个。也就是说每一个类只负责自己的事情,此所谓单一职责。关于单一职责原则的原理,
    我们就不做过多的解释了。重点是职责的划分!重点是职责的划分!重点是职责的划分!重要的事情说三遍。每一个类因该
    划分到最小单位,对应的是数据库设计的原子性。

    2.开闭原则
    一个软件实体应当对扩展开放,对修改封闭
    通过接口或者抽象类约束扩展,对扩展进行边界限定,不允许出现在接口或抽象类中不存在的public方法;
    参数类型、引用对象尽量使用接口或者抽象类,而不是实现类;
    抽象层尽量保持稳定,一旦确定即不允许修改。

    3.接口隔离
    类的依赖关系应建立在最小接口上,不要都塞在一起。即客户端不应该依赖它不需要的接口。
    接口隔离原则就是要求只提供尽可能小的接口,需要高内聚,不需要的行为要隐藏起来

    4. 里氏替换
    子类必须完全实现父类有的方法,如果子类没有父类的某项东西,就断掉继承;
    子类可以有父类没有的东西,所以子类的出现的地方,不一定能用父类来代替;
    透明,就是安全,父类的东西换成子类后不影响程序
    a、父类已经实现的东西,子类不要去new
    b、父类已经实现的东西,想改的话,就必须用virtual+override 避免埋雷

    5.迪米特
    尽可能少写public方法和变量,不需要让其它对象知道的变量或方法就不要公开。迪米特法则的主要目的是减少模块间的依赖,
    降低模块间的耦合度,提高代码的复用性。类中的方法该公有的公有,该私有的私有。

    6.依赖倒置
    依赖倒置原则就是程序逻辑在传递参数或关联关系时,尽量引用高层次的抽象,不使用具体的类,即使用接口或抽象类来引用参数,声明变量以及处理方法返回值等。
    这样就要求具体的类就尽量不要有多余的方法,否则就调用不到。说简单点,就是“面向接口编程”

    这篇文章对你有帮助吗?欢迎添加我个人微信,添加时请备注博客园,一起来交流吧!

    哪啊哪啊神去村的头像
  • 相关阅读:
    zabbix key 模样
    windows key代码
    windows更新代理地址配置
    Proftpd搭建
    SAS界面标题乱码
    jenkins-2.225部署
    DNS 安全详解
    DNS搭建
    修复linux登录超时问题
    prometheus安装全过程
  • 原文地址:https://www.cnblogs.com/yangwujun/p/14592472.html
Copyright © 2011-2022 走看看