软件设计原则
此专栏主要讲解Java领域,相关设计原则,一共六个原则。
该码就码
这个作者很懒,什么都没留下…
展开
-
设计原则(6):开闭原则
开闭原则:开闭原则告诉我们应尽量通过扩展软件 实体的行为来实现变化,而不是通过修改已有的代码来完成变化,它是为软件实体的未来事件而制定的对现行 开发设计进行约束的一个原则。我们举个例子说明一下:以书店销售书籍为例,其类图如图6-1所示。现在问题来了,如果现在需要对书籍进行打折,我们应该怎么做呢?如下:使用扩展的类进行业务逻辑处理,来达到书籍打折业务的修改。我们如何使用开闭原则呢?** ...原创 2019-11-04 23:02:06 · 175 阅读 · 0 评论 -
设计原则(5):迪米特原则
迪米特原则这么说:一个对象应该对其他对象有最少的了解。通俗地讲,一个类应该对自己需要耦 合或调用的类知道得最少,你(被耦合或调用的类)的内部是如何复杂都和我没关系,那是你的事情,我就知 道你提供的这么多public方法,我就调用这么多,其他的我一概不关心。举个例子:体育老师要求体育委员统计班级的学生总数:这个例子有一个设计的问题,Teacher类既依赖的Girl类也依赖了GropuL...原创 2019-11-03 11:20:41 · 230 阅读 · 0 评论 -
设计原则(4):接口隔离原则
接口隔离原则的定义:1、客户端不应该依赖它不需要的接 口。2、类间的依赖关系应该建立在最小的接口上。看完两个定义是不是有点蒙,下面使用通俗易懂的方式给大家解释:1、先说第一种定 义:“客户端不应该依赖它不需要的接口”,那依赖什么?依赖它需要的接口,客户端需要什么接口就提供什 么接口,把不需要的接口剔除掉,那就需要对接口进行细化,保证其纯洁性;2、再说第二种定义:“类间的依赖 关系应该建立...原创 2019-10-31 21:55:02 · 301 阅读 · 0 评论 -
设计原则(3):依赖倒置原则
何为依赖倒置原则,主要分为一下三点:1、模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生 的;2、接口或抽象类不依赖于实现类;3、实现类依赖接口或抽象类;例如:模拟司机开车的场景:两实现相互依赖,如果还要加上...原创 2019-10-31 21:20:42 · 145 阅读 · 0 评论 -
设计原则(2):里氏替换原则
里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 有点难理解吧------------------哈哈 送大家一个很好理解的的方式:“使用父类 (抽象类、接口) 作为参数,传递不同的子类完成不同的业务逻辑,非常完美!”-------------------wenzongyuan...原创 2019-10-29 23:15:23 · 125 阅读 · 0 评论 -
设计原则(1):单一原则
在说单一原则之前,先说一下类图,类图就是描述类与类之间关系的图,基本的关系如下单一原则(SRB),意思就是一个类、函数只做一件事情,如下接口设计就不符合单一原则,因为此接口包含了对用户属性的修改的函数,也包含了用户的行为,因此此类就不遵守单一原则。那我们一般会怎么做呢?如下:将用户的属性相关操作跟用户的行为操作设计为单独的接口,各自负责各自的职责,这样设计会在使用层面造成不方便,...原创 2019-10-29 22:11:26 · 497 阅读 · 0 评论