面向对象设计原则

单一职责

单一职责控制类的粒度


    单一职责原则:一个类只负责一个功能领域中的相应职责, 换句话说:一个类应该只有一个引起它变化的原因

    单一职责告诉我们:一个类不应该承担过多的职责,一个类(大到一个模块,小大一个方法)承担的职责越多,耦合度越高,越不容易复用,当其中一个职责发生变化的时候,可能会影响其余职责的运作。因此需要将不同的职责分离开,将不同的变化原因封装到不同的类中,如果几个原因总是一起变化,也可以封装到一个类中。

    单一职责是应用最广泛,最简单也最难的原则。它需要区分一个类的不同职责,并且将这些职责合理的分类。而发现类的多重职责需要设计人员有逻辑清晰的分析设计能力和相关实践经验。
简例说明:

开闭原则

    开闭原则是面向对象可复用设计的第一块基石,也是最重要的面向对象设计原则


    开闭原则:一个软件实体应该对扩展开放,对修改关闭。即软件实体应尽量在不修改原代码的情况下进行扩展

    这里所说的软件实体可以是一个软件模块,或者由多个类组成的局部结构。
在实际项目中,需求经常是不断变化的,不断扩展的。经常需要添加新的功能,如果每次扩展功能时,需要对原有代码进行修改,这将是不可想象的工作量,也会导致系统极度不稳定。

里氏替换原则

依赖倒转原则

接口隔离原则

迪米特原则

合成复用原则

各原则之间的关系:

    在我看来,单一职责是对细粒度对象的指导思想,一个类或者一个方法应尽量的独立,不要承担过多的责任,尽量低耦合。而迪米特法则是对如何实现单一职责原则的一个方法论:尽量的保持一个类不要与过多的对象产生联系,如果确实需要类与类之间的交互,可以通过一个第三方类来统一管理。
    开闭原则是在设计模块,系统时的指导思想。里氏替换、依赖倒转、接口隔离、合成复用原则都是在为开闭原则服务,是方法论,在一定的高度上说明如何达到开闭原则。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值