
设计模式
文章平均质量分 84
孟祥月
喜欢编程,希望和大家成为好朋友,有什么好东西都拿出来分享一下,哈哈哈!
展开
-
设计模式之我见--1 简单工厂模式
本文所写都是自己的理解,可能会有错误,如果有错误请指出。 如果我们在控制台下做一个计算器,可能我们很容易就很快写出来了。其中可能有一部分人会认为就是输入两个数然后再输入运算符,然后使用if-else或者switch-case语句,进行分支判断计算,然后输出结果就可以了。这个虽然是完成了功能,但是如果我们想要复用这段代码的话就不可能了,因为这个代码是只能在这个程序中使用的。可能很多人都认为这个程序原创 2012-05-17 16:58:12 · 1363 阅读 · 2 评论 -
设计模式之我见--2 策略模式
本文所写都是自己的理解,可能会有错误,如果有错误请指出。 我们都看见过商场的促销,促销的方法可谓是五花八门,并且还不断出现新的促销方式,如果我们用一个程序来帮助商场计算促销后应该收的钱数,对于刚学编程的人可能就会用很多的switch。。。case或者if。。。else if。。。else。。。语句将商场的所有促销手段列到一个程序里,这个本没错,但是修改性扩展性比较差。学的好一点的可能会用简单原创 2012-05-21 10:25:22 · 1477 阅读 · 6 评论 -
设计模式之我见--3 装饰模式
本文所写都是自己的理解,可能会有错误,如果有错误请指出。 在编程中我们可能会遇到类似的情况:一个功能它有好多的步骤,不同的步骤没有一定的顺序,可以组合,但是不同的组合会产生不同的效果,如果我们针对每一种组合都需要写一个程序,那么可能我们会累死。另外在以后如果组合改变的时候,我们改变也很不容易。类比生活中的例子:我们在穿衣服的时候,可以任意搭配,但是如果我们将一个组合固定下来,那么我们穿衣服的时候原创 2012-05-24 10:21:25 · 1797 阅读 · 11 评论 -
设计模式之我见--4代理模式
本文所写都是自己的理解,可能会有错误,如果有错误请指出。 在编程中我们可能去调用一个自己不能直接访问的类的方法或者类的开发者不想直接将类暴露给用户,这时候一般就可以开发一个被调用类的代理,然后通过控制对这个代理类的访问来控制对实际类的访问。这个代理类同时认识这两个类充当了这两个类之间的桥梁的作用。代理模式是对其他对象提供一种代理以控制对这个对象的访问。 下面通过类比来介绍一下这个模式。有一个G原创 2012-06-23 17:18:21 · 3835 阅读 · 0 评论 -
设计模式之我见--5 工厂方法模式
工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。 在我介绍简单工厂模式的时候,写了一个例子,在那个例子中使用了一个工厂用于生成对应的操做类实例,原创 2012-06-24 20:29:20 · 1388 阅读 · 4 评论 -
设计模式之我见--6 原型模式
原型模式用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 Prototype原型模式是一种创建型设计模式,Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。 当有一个对象内部的构建细节非常复杂,而且我们还经常使用多个原创 2012-06-25 09:48:08 · 1166 阅读 · 0 评论 -
设计模式之我见--7 模板方法模式
在开发的过程中到了后期的时候,我们可能都会遇到代码的修改问题,如果一个设计良好的程序,改动量会很小,否则会很麻烦。在开发过程中有一条原则DRY原则,Don't Repeat Yourself。这个意思我的理解就是在开发的过程中尽量使相同的代码,出现在一个地方,不要使相同的代码出现在不同的地方,尽量减少重复的代码,这样我们修改的时候也会比较简单了。在程序中如果过多的使用复制粘贴,会使后面的开发变得十原创 2012-07-13 22:35:50 · 1145 阅读 · 2 评论