栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

设计模式设计原则

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

设计模式设计原则

设计模式真的非常非常简单,就是前人总结的如何写出高质量,高扩展,低耦合的代码。就是一个规范概念,不必陷入**设计模式 **这四个字眼里面去了,总结的经验而已。我将用大白话总结设计模式。 单一职责原则

看到类名就需要大概清楚这个类是做什么的,面对庞大的项目系统,一个类里面塞满了乱七八糟的东西,你的接盘侠会拿刀来找你。一个类负责一个功能,设计简洁,明了。

开闭原则

同样是在庞大的项目背景下,千千万万的程序员组合成的代码,即使他写了注释,想要完全读懂别人的代码基本不可能也没这个精力。所以要求程序员写代码时要考虑到代码后期的扩展问题,把代码写死是禁忌,写死了的话别人就只能把你的老代码读懂并修改你的老代码。但如果你提供了扩展,接盘侠就只要写新的需求然后根据文档处理了,不需要管以前的老代码怎么写的,只需要根据文档看你这个老代码是做什么的,扩展的地方在哪,我直接扩展就行。

里氏替换

基类出现的地方一定能使用其子类。反过来却不行。我喜欢动物,那我一定喜欢狗,我喜欢狗,但我却不喜欢所以动物(蛇)。也就是要求我们将父类设计成接口,子类实现父类重写父类方法。通过多态来达到里氏替换。这样可以很方便的实现扩展,根本不用改原来的代码,只需让新代码也实现其接口就行,轻而易举就扩展了。算是开闭原则的实现之一。

依赖倒转

感觉和里氏替换差不多,个人认为可以把这俩看成一个,它要求我们针对接口编程。不陷进去了。

接口隔离

当一个接口过大,方法过多,并且使用时只用到了接口里的某些方法,完全可以把该接口拆分成更细的接口,我都没用到那几个方法,还是不得不给那些方法重写。理解为接口层次的单一职责

合成复用原则

组合:强关系,比如人和头一定是组合关系
聚合:弱一点的关系,电脑和鼠标,即使没有也不会造成毁灭性影响
当我们想用一个已经存在的类时,可以通过继承该类或者把该类的对象组合/聚合进来。相比直接继承破坏了封装性,增加耦合,优先使用组合/聚合对象的方式。(其实这里根本不用提,大家潜移默化就是这么做的,所以说不必陷入设计模式 这个字眼里去,理解即可,过度规范反而加重了负担)

迪米特法则

要求类与类之间尽可能保持独立,减少耦合。如果一个对象必须调用另一个对象的方法,可以通过第三者转发,与无关的第三者耦合可比俩个业务类耦合在一起好多了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/678767.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号