#大话设计模式

设计模式:迭代器模式(Iterator)

     你项目组接到一个项目:对电视机的电视频道、电影和收音机菜单进行统一管理,建立一个统一的菜单管理界面,能够看到所有的电视界面、电影界面和收音机频道。你有三个手下:小李子、小杏子、小安子,他们分别就每个模块做开发工作,看他们都做了哪些工作。  ...

设计模式:解释器模式(Interpreter)

     为人处事是一门大学问,察言观色、听懂弦外之音都是非常重要的,老板跟你说“XX你最近表现平平啊,还得要多努力”,如果你不当回事,平常对待,可能下次就是“XX,恩,你人还是不错,平常工作也很努力,但是我想这份工作可能不是很适合你…..”。又比如你老大说“XX,你最...

设计模式:命令模式(Command)

     在开发过程中,我可能会需要向某些对象发送一些请求,但是我们不知请求的具体接收者是谁,也不知道被请求的操作是那个,我们只知道在程序运行中指定具体的请求接收者即可。打个比方,电视遥控器,我们只需要知道按那个按钮能够打开电视、关闭电视和换台即可,并不需要知道是怎么开...

设计模式:职责链模式(Chain of Responsibility)

     去年参加校招要到长沙来,这个对于我来说不是特别喜欢(但又必须的来,谁叫咱不是985、211的娃呢),但是对于某些人来说就是福音了。大四还有课,而且学校抓的比较严,所以对于那些想翘课的人来说这个是最好不过的理由了—去参加校招了。所以咱学校规定所以去参加校招的必须...

设计模式:单例模式(单例模式)

     有时候某些对象我们只需要一个,如:线程池、缓存、对话框等等,对于这类对象我们只能有一个实例,如果我们制造出多个实例,就会导致很多问题产生。     但是我们怎样才能保证一个类只有一个实例并且能够便于访问?这里我...
代码星球 ·2020-12-09

设计模式:原型模式(Prototype)

     以前听过这样一句话:“程序员的最高境界就是Ctrl+C、Ctrl+V”,我们先不论这句话的对错,就论这个过程,这个过程我们都知道无非就是复制一个对象,然后将其不断地粘贴。这样的过程我们可以将其称之为“克隆”。再如我们应聘的时候打印了那么多的简历。 &...

设计模式:工厂方法模式(Factory method)

    一、问题                      ...

设计模式:建造者模式(Builder)

     流水作业大家应该都清楚吧!在流水作业中,我们可以将一些复杂的东西给构建出来,例如汽车。我们都知道汽车内部构件比较复杂,由很多部件组成,例如车轮、车门、发动机、方向盘等等,对于我们用户来说我们并不需要知道这个汽车是如何构建出来的,它的各个部件是如何组装,我们只需...

设计模式:抽象工厂模式(Abstract Factory)

    在设计原则中有这样一句话“我们应该针对接口编程,而不是正对实现编程”。但是我们还是在一直使用new关键字来创建一个对象,这不就是在针对实现编程么?     针对接口编程,可以隔离掉以后系统可能发生的一大堆改变。入股代码是针...

设计模式:代理模式(Proxy)

     在我们实际生活中代理情况无处不在!你在淘宝上面买东西,你使用支付宝平台支付,卖家请物流公司发货、你请朋友帮你拿包裹,在这个过程汇总支付宝、物流公司、你朋友都扮演者“第三者”的角色在帮你完成物品的购买,这里的第三者我们可以将其称之为代理者。  ...

设计模式:享元模式

     面向对象可以非常方便的解决一些扩展性的问题,但是在这个过程中系统务必会产生一些类或者对象,如果系统中存在对象的个数过多时,将会导致系统的性能下降。对于这样的问题解决最简单直接的办法就是减少系统中对象的个数。    &nb...
代码星球 ·2020-12-09

设计模式:门面模式(Facade)

      前面介绍的适配器模式讲的是如何将一个接口转换成客户所需要的另一个接口,它的目的在于解决接口的不兼容性问题。现在这里有这样一个模式,它的目的在于如何简化接口,它可以将多个类的复杂的一切隐藏在背后,只显露出一个干净美观的外观。  &...

设计模式:装饰者模式

    我们都知道,可以使用两种方式给一个类或者对象添加行为。     一是使用继承。继承是给一个类添加行为的比较有效的途径。通过使用继承,可以使得子类在拥有自身方法的同时,还可以拥有父类的方法。但是使用继承是静态的,在编译的时候...
代码星球 ·2020-12-09

设计模式:组合模式

     我们对于这个图片肯定会非常熟悉,这两幅图片我们都可以看做是一个文件结构,对于这样的结构我们称之为树形结构。在数据结构中我们了解到可以通过调用某个方法来遍历整个树,当我们找到某个叶子节点后,就可以对叶子节点进行相关的操作。我们可以将这颗树理解成一个大的容器,容器...
代码星球 ·2020-12-09

设计模式:桥接模式

    在开始学java的时候老师讲到继承的时候,总是喜欢用一个例子来讲解,那就是画图,这里有一个画笔,可以画正方形、长方形、圆形(这个大家都知道怎么做吧,我就不解释了)。但是现在我们需要给这些形状进行上色,这里有三种颜色:白色、灰色、黑色。这里我们可以画出3*3=9中图形:白色...
代码星球 ·2020-12-09
首页上一页...1314151617...下一页尾页