亲宝软件园·资讯

展开

java面向对象设计单一职责与依赖倒置原则 java面向对象设计原则之单一职责与依赖倒置原则详解

guoyp2126 人气:0
想了解java面向对象设计原则之单一职责与依赖倒置原则详解的相关内容吗,guoyp2126在本文为您仔细讲解java面向对象设计单一职责与依赖倒置原则的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:java面向对象设计原则,java单一职责,java依赖倒置,下面大家一起来学习吧。

单一职责概念

不要存在多于一个导致类变更的原因,也就是说每个类应该实现单一的职责,否则就应该把类拆分。交杂不清的职责将使得代码牵一发而动全身,导致代码混涩难懂,不易修改、难以扩展和复用。如:以前开发C/S程序中的胖客户端程序,就是将人机交互逻辑、业务加工处理逻辑和数据库操作逻辑混合在一起。

实现

单一职责原则是进行类的划分和封装的基本原则,进行类的具体抽象。尽量做到,类的功能单一和清晰化。

1.根据机能划分,使用封装来创建对象之间的分界层,让设计者可以在分界层的一侧进行修改,而不会对另一侧产生不良的影响,从而实现层次间的松耦合。
2.当前开发框架一般为分层框架,在分层框架中,已经明确给出了各层的职责,对于业务简单的小型系统,个人认为类的划分按照以下步骤即可。

拓展

单一职责原则是写代码最容易违反的一个原则,违反此原则代码立即转换成all in one;
虽然很多框架明确规定各层职责,但程序员经常将代码写到一处;
虽然使用面向对象语言,还是面向过程调用

依赖倒置原则概念

依赖倒置原则要求依赖抽象,不要依赖具体;抽象的稳定性决定了系统的稳定性,因为抽象是不变的,依赖于抽象是面向对象设计的精髓。

示例

参考:要依赖于抽象,不要依赖于具体

拓展

控制翻转(IOC):里氏替换原则解决了子类可以替换父类的问题,但是子类在什么时候创建,由谁创建就是依赖倒置原则要解决的问题。对象使用前,必须创建具体的对象,如A类中调用了B类的方法,则在A类里面需要创建B的实例对象,则A依赖于B。现在让A依赖于B的父类(接口),A不创建B实例,而是把创建实例的权限交给容器,由容器创建实例给A,容器给那个实例,A用那个实例,A控制权丢失。所谓的容器就是一段代码,如:工厂类、Spring容器等。

加载全部内容

相关教程
猜你喜欢
用户评论