设计模式
一棵橙子树
C#/C++
展开
-
设计模式(2)——观察者模式
首先要说的是观察者模式是十分重要的,就它的响应机制而言,几乎任何软件都涉及该功能;其次要声明的是我对观察者模式的理解还不够深入,我仅仅能通过委托和接口实现观察者模式,还未尝试用C#内置特性(C#提供观察者模式的接口)来实现该模式;最后要阐明的是不管哪种实现方式,都值得学习和研究,毕竟这个模式太重要了(应该也是一个很基础的模式吧)目前明确两种实现方式:1.通过C#的委托(委托是C#的语言特性)实...原创 2019-06-13 15:21:30 · 71 阅读 · 0 评论 -
设计模式(4)——观察者模式(续)
简单工厂模式和工厂模式是用来实例化类的一种设计模式,工厂模式相比简单工厂模式实现了所有要实例化类的抽象,并根据该抽象类的子类来实现各个类的实例化对象,该方式充分体现了依赖倒置原则,充分体现了针对接口编程而不是针对实现编程的原理……代理模式是一种十分好理解的设计模式,首先是有一个抽象的功能类,包含了所有要实现的方法或者属性,然后真实实体和代理(Proxy)分别去继承并实现方法,然而在代理中,保存...原创 2019-06-18 22:01:06 · 173 阅读 · 0 评论 -
设计模式(3)——OOP原则
从最开始接触的Python到现在的C#,这些都是面向对象的编程语言,那么什么是面向对象编程呢?在最开始学习Python的时候,一直都在学习基本的数据结构,依然是面向过程编程,很难对程序语言有较深的理解,在学习C#的时候,我渐渐开始接触类、接口等概念,然而真正开始理解并应用这些概念可花费了不少时间,随后我也渐渐发现,OOP技术的强大之处与魅力所在。在此总结一下面向对象编程的好处与部分原则。面...原创 2019-06-16 18:33:53 · 161 阅读 · 0 评论 -
设计模式之旅(1)——策略模式
因为课题需要,我必须能够读懂大佬的源代码框架,所以我必须对设计模式有所了解。我会将我的理解记录于此,如有差错,望朋友指正。第一个模式叫做策略模式,我认为它不应该算是一种模式,而是一种为了提高代码的复用性降低耦合度的一种思想,整个面向对象的编程中都应该充斥着这种思想,是所有设计模式的基石。开篇例子是这样的,有个模拟鸭子游戏,叫做SimUDuck,游戏中会出现各种鸭子,一边游泳一边呱呱叫,...原创 2019-06-12 12:16:55 · 113 阅读 · 0 评论 -
C#系统中的栈和自定义栈
class SystemStack<T> { 系统定义的栈,Push和Pop方法都已经写好 Stack<T> systemStack = new Stack<T>(); public void AddT(T x) { systemStack.Push(x); ...原创 2019-07-05 11:33:27 · 638 阅读 · 0 评论