【设计模式】
文章平均质量分 80
五月槐花儿香
你就是你!
展开
-
于C#处看面向对象
终于又到了写代码的阶段,感觉甚好啊!最近学习C#,每开始一门课程总要先学面向对象,VB中,软工中,连UML都是,C#也不例外。面向对象的思想无处不在,下面再从C#中看面向对象。当然像封装啊、继承啊、实例化之类的名词我们已经接触过N次了,不过每次我都会先温习一下这些含义的,而每每都会温故而知新。 让我先从类说起:动物是一个类,老虎也是一个类。但是我们把动物成为抽象类,那么怎么区分呢?这原创 2013-02-26 21:37:23 · 1694 阅读 · 11 评论 -
Java项目(5)——单例模式的应用与研究
单例模式是很别致的一个模式,很少有人拿它跟其他模式相比,因为,单例模式很简单,很特别,作用就是保证一个类有唯一一个实例,并让一个全局变量使得它能被访问.而保证这个类只被实例化一次的办法就是把构造函数变为私有的,除了它自己都不能new新对象,然后把实例化的过程写在类自身的公有方法里,是否new新对象只有它自己判断决定,已经有了一个实例就直接返回已存在的对象,没有就new一个新实例.其他类想实例化一个原创 2014-10-29 22:24:34 · 1720 阅读 · 35 评论 -
(5)模板方法模式
有人说,如果只学习一种设计模式,那么就学模板方法模式好了。有些夸张却由此可见模板方法模式的地位。它是这样定义的: 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。我的理解是,当我们知道一个算法所需要的关键步骤,并确定了它们的执行顺序,但不知道某些具体步骤或者某些步骤的实现与具体环境相关时,就可以这么做:原创 2013-03-22 19:54:56 · 1215 阅读 · 3 评论 -
(10)抽象工厂模式
占原创 2013-05-27 22:32:19 · 1183 阅读 · 1 评论 -
(9)观察者模式
它是这样定义的:观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象.这个主题对象再状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己.我的理解是这样的,在公共课上,老师并不知道台下有多少个学生在听课,这是一种一对多的关系,老师发出通知"开始上课",所有的学生都停止说话等小动作集中尽力开始听课,老师说"听写",学生又都拿出笔和纸准备听写,这些学生就是老师这一主原创 2013-05-14 09:32:56 · 1346 阅读 · 3 评论 -
(7)建造者模式
建造者模式的定义 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. 我觉得其实建造者模式就是一种封装,将具体实现方法封装起来,只有建造者知道,而用户不知道.用户只需要提出要建造的类型就可以了,具体建造过程和细节由建造者来做.结构图及对结构图的分析建造者模式中有4个角色:Product 产品类 通常是实现了模板方法模原创 2013-04-24 20:23:45 · 1162 阅读 · 3 评论 -
(6)外观模式
外观模式是一个很常用的模式,它最大的特点将细粒度的对象包装成粗粒度的对象,可以这样理解,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。我发现设计模式一直在讲抽象和封装,当然不只是抽象和封装。这种思想将会一直伴随软件开发吧……它是这样定义的: Facade,为子系统中的一组接口提供一个一致原创 2013-04-07 19:55:16 · 1470 阅读 · 6 评论 -
(4)原型模式Prototype
它是这样被定义的: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 就像有一份写好的简历样本,现在需要复制出N份只有名字或年龄不同其他都相同的简历,怎么做呢?原型模式就好比一台现实生活中的复印机。其实就是从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节。复印机本身不知道所复印的内容,却一字不差地复印了出来。原型模式的类型:原创 2013-04-06 10:24:52 · 1469 阅读 · 6 评论 -
(2)单一职责原则和(3)开放-封闭原则
单一职责原则SRP:SingleResponsibility Principle,就一个类而言,应该仅有一个引起它变化的原因。 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的功能。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。正如一个人可能担负着很多重要的职责,那么对他而言合理分配时间去做各项任务就原创 2013-03-15 17:30:26 · 1778 阅读 · 7 评论 -
(1)简单工厂模式
由于我对C#的理解尚不深入,所以在学习设计模式过程中一并对C#知识进行总结,以供自己以后学习回顾之用。命名要规范不规范:Console.Write("请输入数字A");string A = Console.ReadLine();规范:Console.Write("请输入数字A");string strNumberA = Console.ReadLine();原创 2013-03-06 16:24:35 · 1322 阅读 · 7 评论 -
JDK动态代理
那时候还小,只记得代理模式就是 daili 给 SchoolGirl 送了洋娃娃,送了花,还送了巧克力… 代理模式是在访问对象时引入一定程度的间接性,这种间接性让我们可以趁机完成许多想要的功能.代理模式的特征是代理类和委托类有同样的接口,代理类主要负责为委托类预处理消息,过滤消息,把消息转发给委托类,以及事后处理消息等.代理类对象和委托类对象关联,代理类对象是通过调用委托原创 2015-03-17 08:21:47 · 1322 阅读 · 11 评论