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

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

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

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

02 设计模式

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

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

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

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

03 设计模式分类

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

3.1、创建型设计模式

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

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

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

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

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

3.2、结构性设计模式

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

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

3.3、行为型设计模式

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

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

04 后记

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

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

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

相关推荐
羚羊角uou11 分钟前
【C++】智能指针
开发语言·c++
代码不停18 分钟前
网络原理——初识
开发语言·网络·php
颜酱37 分钟前
理解编程的设计模式(前端角度)
设计模式
不会c嘎嘎44 分钟前
C++ -- list
开发语言·c++
老鱼说AI1 小时前
BPE编码从零开始实现pytorch
开发语言·人工智能·python·机器学习·chatgpt·nlp·gpt-3
星释1 小时前
Rust 练习册 32:二分查找与算法实现艺术
开发语言·算法·rust
ZHE|张恒1 小时前
设计模式(五)原型模式 — 通过克隆快速复制对象,避免复杂初始化
设计模式·原型模式
William_cl1 小时前
C# ASP.NET Controller 核心:ViewResult 实战指南(return View (model) 全解析)
开发语言·c#·asp.net
wtrees_松阳1 小时前
Flask数据加密实战:医疗系统安全指南
开发语言·python
皮影w2 小时前
Java SpringAOP入门
java·开发语言