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

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

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

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

02 设计模式

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

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

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

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

03 设计模式分类

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

3.1、创建型设计模式

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

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

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

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

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

3.2、结构性设计模式

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

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

3.3、行为型设计模式

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

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

04 后记

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

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

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

相关推荐
杜子不疼.24 分钟前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
加号331 分钟前
【C#】 串口通信技术深度解析及实现
开发语言·c#
sycmancia1 小时前
Qt——编辑交互功能的实现
开发语言·qt
石山代码2 小时前
C++ 内存分区 堆区
java·开发语言·c++
无风听海2 小时前
C# 隐式转换深度解析
java·开发语言·c#
LateFrames3 小时前
520 - 如何说晚安 (WPF)
c#·wpf·浪漫·ui体验
一只大袋鼠3 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
LuminousCPP3 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
魔法阵维护师3 小时前
从零开发游戏需要学习的c#模块,第十四章(保存和加载)
学习·游戏·c#
web3.08889993 小时前
1688 图搜接口(item_search_img / 拍立淘) 接入方法
开发语言·python