c#进阶学习day9

本文深入探讨了C#中的多种设计模式,包括原型模式、建造者模式、适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式和享元模式。详细阐述了每种模式的概念、应用场景及其实现方式,帮助C#开发者提升代码设计能力。
摘要由CSDN通过智能技术生成

1、原型设计模式

用于创建重复的对象,同时又能保证性能。

浅拷贝:对于值类型,直接复制,不会开辟新的值类型的值。对于引用类型,直接引用其地址,不会创建新的对象。

深拷贝:值类型和引用类型都是直接创建—个新的值或对象。

2、建造者设计模式

建造者模式,是将一个复杂对象的构建和它的表示分离,使得同样的构建过程,可以创建不同的表示。

AbstractBuilder(抽象建造者)

为创建一个产品对象的各个部件指定抽象接口,在该接口或者抽象类中,一般提供两种方法,第一种就是各个组件的创建方法,

另一类方法是对象返回方法,用于将构建完成的对象返回。

ConcreteBuilder(具体建造者)

具体建造者实现或者继承抽象建造者,实现各个组件的创建方法和对象方法的方法。

Product()

被构建的复杂对象,包含多个组件。

Director(指挥者)

指挥者负责安排复杂对象的建造顺序

3、适配器模式

适配器模式,将一个类的接口,转换成客户希望的另外一个接口。

Adaptee:初始角色,实现了我们想要的功能,但是接口不匹配

Target:目标角色,定义了用户希望的的接口。

Adapter:适配器角色,实现了目标接口。实现的方法是,内部包含了一个Adaptee对象,通过调用Adaptee对象原有的方法实现功能。

4、装饰器设计模式

装饰模式:动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。

5、代理设计模式

6、外观设计模式

外观模式:隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的统一接口,这个统一接口组合了子系统的多个接口。使得子系统更容易被访问和使用。

7、桥接设计模式

桥接设计模式:将抽象部分与它的实现部分分离,使他们都可以独立的变化。

8、组合设计模式

组合设计模式:你可以使用它将对象组合成树状结构,并且能像使用独立对象一样使用他们。

Component

组合模式的根节点,可以是接口、抽象类、普通类,该类定义了子类中所有共性的内容,并且还定义了用于访问和管理子类的方法。

Leaf

组合中的叶子节点,也就是最末端的节点,该节点下,不会再有子节点

Composite

非叶子节点,它的作用是存储子部件,并且在Composite中实现了对子部件的相关操作。

9、享元设计模式

当系统中大量使用某些相同或者相似的对象,这些对象会消耗大量的资源,并且这些对象剔除外部状态后可以通过同一个对象来替代

内部状态:对象内部不受环境改变的部分作为内部状态。

外部状态:随着环境的变化而变化的部分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值