![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
-----设计模式
时光无声_l
这个作者很懒,什么都没留下…
展开
-
【设计模式】C#版单例模式实例讲解
引言 单例模式是最常用到的设计模式之一。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息。这种方法简化了在复杂环境下的配置管理、简介 单例模式就是指一个类永远只能实例化一次。使用原创 2017-02-04 16:52:00 · 929 阅读 · 10 评论 -
【设计模式】C#版三大工厂之简单工厂、工厂方法与抽象工厂
引言 简单工厂、工厂方法、抽象工厂都属于设计模式中的创建型模式。其主要功能都是帮助我们把对象的实例化部分抽象取了出来,优化了系统的架构,并且增强了系统的扩展性。此篇博客是笔者对学完这三种模式之后一个小小的总结简单工厂 简单工厂模式的工厂类一般是使用静态方法,通过接收的参数不同来返回不同的对象实例。不修改代码的话,是无法扩展的 优点原创 2017-02-03 21:28:04 · 6650 阅读 · 15 评论 -
【设计模式】六大原则之一(单一职责与开闭原则)
【前言】【单一职责原则】1、单一职责原则的由来 初学者在编程的时候可能一开始会有这样的经历,使用一个类来实现很多的功能,新添加的甚至不相关的功能都放在一个类中来实现,煮成了一锅大杂烩,往往使得某个类包罗万象,无所不能。可能刚开始实现的功能比较简单,这样做不会引起很大的问题。但是随着之后项目复杂度的提升,各种不相关的代码耦合在一起,一旦有功能的更改或增删,修改的代码很可能导原创 2017-02-01 21:26:27 · 4413 阅读 · 11 评论 -
【设计模式】六大原则之二(依赖倒转原则与里氏代换原则)
【前言】上一篇博客中介绍了六大原则其中之二,这篇博客中将会再给大家介绍两个原则--依赖倒转原则和里氏代换原则【依赖倒转原则】1、问题由来 类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是底层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险 那么原创 2017-02-02 21:23:18 · 1034 阅读 · 12 评论 -
【设计模式】六大原则之三(迪米特法则与合成/聚合复用原则)
引言 前面两篇博客介绍了设计模式中六大原则其中之四,下面这篇博客中将会再给大家介绍六大原则最后两个原则【迪米特法则】1、问题由来 类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大 那么如何解决这个问题呢? 尽量降低类与类之间的耦合。自从我们接触编程以来,就知道软件编程的原则:高内聚,低耦合原创 2017-02-03 14:46:53 · 3551 阅读 · 10 评论 -
【设计模式】全局观之为什么分三大类
引言 距离设计模式敲完也有差不多一周多了,但是对于为什么要分为三大类还是不太理解,于是就出来了这篇博客全局观 大家都知道设计模式可以根据目的分为三大类,分别是创建型模式、结构型模式、行为型模式 那么为什么这么分呢?下面说一下笔者的理解 创建型模式:主要用于处理对象的创建,实例化对象。但是,这可能会限制在系统内创建对象的类型原创 2017-02-03 16:40:00 · 3186 阅读 · 18 评论 -
【设计模式】C#版原型模式
引言 在软件系统中,当创建一个类的实例的过程很昂贵或很复杂,并且我们需要创建多个这样类的实例,如果我们用new操作符去创建这样的类实例,这可能会增加创建类的复杂度和耗费更多的内存空间,因为这样在内存中分配了多个一样的类实例对象,所以就引出了原型模式。原型模式可以很好的解决这个问题,因为每个类实例都是相同的,当我们需要多个相同的类实例时,没必要每次都使用new运算符去创建一个相同的原创 2017-02-12 18:44:04 · 566 阅读 · 16 评论