摘要: 模板方法模式,也是我们经常会在不经意间有会用到的模式之一。这个模式是对继承的最好诠释。当子类中有重复的动作时,将他们提取出来,放在父类中进行统一的处理,这就是模板方法模式的最简单通俗的解释。就像我们平时做项目,每次的项目流程实都差不多,都有调研、开发、测试、部署上线等流程。而具体到每个项目中,这些流 阅读全文
posted @ 2021-01-05 10:53 码农老张 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 门面模式,也叫外观模式。不管是门面还是外观,都是我们对外的媒介,就好像我们的脸面一样。所以,这个模式最大的特点就是要表现的“好看”。怎么说呢?一堆复杂的对象调用,自己都看蒙了,特别是对老系统进行升级维护的时候。用门面来把老系统的功能调用封装起来,在外面看来就和新系统一样,这就是门面模式的用途啦! G 阅读全文
posted @ 2021-01-04 08:37 码农老张 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 桥接模式,在程序世界中,其实就是组合/聚合的代名词。为什么这么说呢?熟悉面向对象的我们都知道继承的好处,子类可以共享父类的很多属性、功能。但是,继承也会带来一个问题,那就是严重的耦合性。父类的修改多少都会对子类产生影响,甚至一个方法或属性的修改都有可能让所有子类都去修改一遍。这样就违背了开放封装原则 阅读全文
posted @ 2020-12-31 09:49 码农老张 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 备忘录,这个名字其实就已经很形象的解释了它的作用。典型的例子就是我们原来玩硬盘游戏时的存档功能。当你对即将面对的大BOSS有所顾虑时,一般都会先保存一次进度存档。如果挑战失败了,直接读取存档就可以恢复到挑战BOSS前的状态,然后你就开开心心的再去练一会级回来解决这个大BOSS就好了。不过,为了以防万 阅读全文
posted @ 2020-12-30 10:15 码农老张 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 建造者模式,也可以叫做生成器模式,builder这个词的原意就包含了建筑者、开发者、创建者的含义。很明显,这个模式又是一个创建型的模式,用来创建对象。那么它的特点是什么呢?从建筑上来说,盖房子不是一下子就马上能把一个房子盖好的,而是通过一砖一瓦搭建出来的。一个房子不仅有砖瓦,还有各种管道,各种电线等 阅读全文
posted @ 2020-12-29 10:16 码农老张 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 上回说道,我们在外打工的经常会和一类人有很深的接触,那就是房产中介。大学毕业后马上就能在喜欢的城市买到房子的X二代不在我们的考虑范围内哈。既然需要长期的租房,那么因为工作或者生活的变动,不可避免的一两年或者三五年就要和房产中介打一次交道。有的时候,我们租房并不一定会知道房主的信息,房主也不用知道我们 阅读全文
posted @ 2020-12-28 10:54 码农老张 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 互联网公司流行扁平化管理,也就是管理层级尽量少于或者不超过三层,作为一个底层的码农,你的CEO和你的职级也就相差3层以内。但是很多传统企业,则会有非常深的层级关系,从数据结构看,这种按职能进行分组的组织架构非常像一颗树。而我们今天介绍的组合模式的作用就和这个企业组织架构层级的模式非常类似。 Gof类 阅读全文
posted @ 2020-12-25 09:40 码农老张 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 享元模式,“享元”这两个字在中文里其实并没有什么特殊的意思,所以我们要把它拆分来看。“享”就是共享,“元”就是元素,这样一来似乎就很容易理解了,共享某些元素嘛。 Gof类图及解释 GoF定义:运用共享技术有效地支持大量细粒度的对象 GoF类图 代码实现 interface Flyweight { p 阅读全文
posted @ 2020-12-24 11:35 码农老张 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 代理人这个职业在中国有另外一个称呼,房产经济人、保险经济人,其实这个职业在国外都是叫做房产代理或者保险代理。顾名思义,就是由他们来帮我们处理这些对我们大部分人来说都比较生疏的专业领域的工作。代理模式也是一样的道理,同时,在这篇文章中还会简单的介绍正向代理和反向代理是怎么回事。 Gof类图及解释 Go 阅读全文
posted @ 2020-12-23 09:56 码农老张 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 责任链模式,属于对象行为型的设计模式。 Gof类图及解释 GoF定义:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 GoF类图 代码实现 abstract class Handler { protec 阅读全文
posted @ 2020-12-22 09:14 码农老张 阅读(276) 评论(0) 推荐(0) 编辑