摘要:单例模式是所有设计模式中最简单的模式,也是我们平常经常用到的,单例模式通常被我们应用于线程池、缓存操作、队列操作等等。 单例模式旨在创建一个类的实例,创建一个类的实例我们用全局静态变量或者约定也能办到单例的作用,为什么我们要用单例模式? 接下来我们就从如何形成单例模式,单例模式创建的过程来讲解。 1 阅读全文
posted @ 2019-11-11 09:03 Spring2Sun 阅读 (175) 评论 (0) 编辑
摘要:前言:按照惯例我以Head First设计模式的工厂模式例子开始编码学习。并由简单工厂,工厂模式,抽象工厂模式依次演变,归纳他们的相同与不同。 话说Head First认为简单工厂并不是设计模式,而是一种编程习惯,但并不妨碍我们使用它,接下来我们对工厂模式一探究竟。 1、披萨店例子 首先我们要开一个 阅读全文
posted @ 2019-11-07 01:38 Spring2Sun 阅读 (173) 评论 (2) 编辑
摘要:前言:对于设计模式我们有时候在想是否有必要,因为实际开发中我们没有那么多闲工夫去套用这么多设计模式,也没有必要为了模式而模式。 通常这些模式会引入新的抽象层,增加代码的复杂度,但是当我们掌握了这些设计模式, 在系统中比较棘手或者需要以后修改扩展的地方采用了合适的设计模式会让我们的系统易于扩展维护甚至 阅读全文
posted @ 2019-10-25 08:43 Spring2Sun 阅读 (171) 评论 (0) 编辑
摘要:前言: 这篇文章我们以Head First设计模式中讲解的气象站为例,通过它的案列进行学分析和编码(C#)测试,并归纳总结出观察者模式。 1、气象监测案列,错误示范实现 一个气象站,分别有三个装置:温度感应装置,湿度感应装置,气压感应装置。WeathData对象跟踪气象站数据,WeathData有M 阅读全文
posted @ 2019-10-22 11:28 Spring2Sun 阅读 (187) 评论 (0) 编辑
摘要:1、继承带来的扩展和复用问题 继承作为面向对象的三大要素(封装、继承、多态)之一为什么会带来问题,问题如何解决然后形成一种设计模式,head frist设计模式书中以鸭子作为例子讲解什么情况下继承的方式会带来问题。首先有各种各样的鸭子,那么自然想到各种鸭子继承自一个父类:父类为Duck,现有绿头鸭G 阅读全文
posted @ 2019-10-18 15:24 Spring2Sun 阅读 (222) 评论 (2) 编辑
摘要:对于C#里面的Foreach学过 语言的人都知道怎么用,但是其原理相信很多人和我一样都没有去深究。刚回顾泛型讲到枚举器让我联想到了Foreach的实现,所以进行一番探究,有什么不对或者错误的地方大家多多斧正。 1、创建一个控制台应用程序 2、编写测试代码并分析 在Program类中写一个foreac 阅读全文
posted @ 2018-10-22 11:51 Spring2Sun 阅读 (287) 评论 (0) 编辑