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

2022年了 你还不懂设计模式的设计原则?

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

2022年了 你还不懂设计模式的设计原则?

学习任何设计模式 我们都应该先学习设计模式八大设计原则 为什么呢? 因为设计模式必须依赖设计原则

依赖倒置原则是什么意思呢 高层模块和底层模块不能直接相关联 他们之间应该有一个抽象层 一套标准 比如操作系统给你提供的socket编程 这就是一个标准 他底层封装了各种协议 TCP UDP IP但是你在使用的时候 你仅仅需要按照他提供的接口进行编程 指定一些参数 然后就可以正常的跑起来 socket编程就是经典的应用层与传输层之间的抽象层 这样应用层只需要面向socket抽象层就可以进行网络编程 底层网络协议的具体实现也只需要对socket这个抽象层进行修改就可

开放封闭原则是什么意思呢 一个类在确定好了之后 最好是不要再去修改 他应该维持他本来就应该有的一些行为 具体实现你可以扩展 你可以继续继承然后重写他的虚函数来进行扩展 但是最好不要修改本身的属性和方法

这是什么意思呢 如图

 试问哪一种方式更好呢? 明显是第二种 为什么呢 因为他存储的是一个基类的指针 而不是一个具体的类 他就可以选择不同的实现

 这是最最最最最关键的一个设计原则 没有变化点的代码 是不需要任何设计模式的 因为你不用考虑可扩展性 可复用性 可移植性

这是一个很玄学的一条设计原则 作者也不能很快的给你说清楚 一个项目中稳定的点需要和不稳定的点实现层次分离 这个属实只能自己领会

 

一个类最好是只负责一种事情 不要有太多的功能 因为你一旦功能多了 变化也就多了  比如一个线程类 你只负责线程的执行终止等一系列线程的操作 但是具体我要实现什么函数 你别来参与 

 

即子类必须要实现父类所要求的所有方法 不然有可能程序便会报错 如下代码 便有可能出事

class E
{
	virtual int function1()
	{
		function2();
	}
	virtual int function2();
};
class F :public E
{
public:

	int function2();

};

 

 比如 一个冰箱类 他提供给用户的接口便是冷藏 至于到底是怎么冷藏的 不必让客户知道

 

 这个设计原则就是字面意思 组合耦合度比继承耦合度低

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

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

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