C#知识|设计模式的分类及认识

继承是为了解决代码复用问题和子类扩展问题;控件二次开发中经常用到;

接口解决扩展和团队协作问题,实现多态和项目框架设计;

继承+接口:可以相互弥补不足,接口弥补了继承不能多重继承的问题,同时也实现灵活扩展;

02 设计模式

设计模式是针对软件设计中常见问题的总结,

也就是前人的解决方法,设计模式时各种技术的综合应用;

面向对象解决的问题是整个项目的设计思想,即要基于对象思考,使用抽象设计,要做到一切以对象为重;

设计模式解决的问题:是项目开发中某些环节的扩展问题,是对面向对象编程设计思想的补充;

03 设计模式分类

根据目的可以分为以下几类

3.1、创建型设计模式

①研究问题:研究对象的创建问题,即将对象的创建和应用分离,从而达到解耦的目的;

②主要模式:简单工厂、抽象工厂、单利模式、建造者模式、原型模式等等;

简单工厂:解决了一个对象的创建问题,多个取其一;

抽象工厂:解决多个对象的创建问题,多组取一组;

单利模式:解决同一对象的创建问题,始终就一个对象

3.2、结构性设计模式

①研究内容:对象的组合问题,即对象按照某种方式组合,便于更好的扩展功能;

②主要模式:代理模式,适配器模式、桥接、装饰器模式

3.3、行为型设计模式

①研究的问题:研究对象如何交互分配职责,即对象如何相互协作共同完成单个对象无法完成的任务;

②主要模式:模板模式、责任链模式、命令模式、中介者模式、观察者模式

04 后记

现如今这个时代,AI的发展日新月异,每天都有层出不穷的产品出来,在这样的环境下,再想着一个工作一个职业能干一辈子已经是不可能的事了。

别说现在的工作岗位,现在所在的行业说不定哪天就突然消失了。

在这个快速变化的时代,拥抱变化,保持学习变得越来越重要。

相关推荐
软件黑马王子1 小时前
C#初级教程(4)——流程控制:从基础到实践
开发语言·c#
闲猫1 小时前
go orm GORM
开发语言·后端·golang
黑不溜秋的2 小时前
C++ 设计模式 - 策略模式
c++·设计模式·策略模式
李白同学2 小时前
【C语言】结构体内存对齐问题
c语言·开发语言
黑子哥呢?4 小时前
安装Bash completion解决tab不能补全问题
开发语言·bash
青龙小码农4 小时前
yum报错:bash: /usr/bin/yum: /usr/bin/python: 坏的解释器:没有那个文件或目录
开发语言·python·bash·liunx
大数据追光猿4 小时前
Python应用算法之贪心算法理解和实践
大数据·开发语言·人工智能·python·深度学习·算法·贪心算法
付聪12104 小时前
策略模式介绍和代码示例
设计模式
彳卸风5 小时前
Unable to parse timestamp value: “20250220135445“, expected format is
开发语言
dorabighead5 小时前
JavaScript 高级程序设计 读书笔记(第三章)
开发语言·javascript·ecmascript