【设计模式】
码农胖虎-java
誓历人间万重险,不改追梦赤子心!
展开
-
【设计模式】设计模式总览-----程序员的九阳神功
【前言】 但凡男孩子,大多都曾有个大侠梦,修得一身武艺,仗剑行侠世间。我小的时候就特别羡慕张无忌,希望自己有朝一日也能练成九阳神功,从此世间虽大,何处不可去的……奈何,,如今成为了一个程序员…… 那么我们就来看看专属于程序员的九阳神功——设计模式吧。原创 2015-12-05 17:40:58 · 1047 阅读 · 38 评论 -
【设计模式】不就是换DB嘛——抽象工厂
上篇文章分析学习了一下外观模式的适用情况和经典实例。今天再来看看重构时用到的另一个设计模式——抽象工厂。 抽象工厂的作用主要就是在有一系列工厂且每个工厂都有一系列产品可以选择的时候,把系列产品统一一个接口,并且把具体产品与客户端解耦合。就像我们的系统可以有许多种数据库可选择,我们把可能用到的数据库都写成工厂。 比如我们可能用到sql server 和 Access。原创 2016-02-14 18:49:08 · 721 阅读 · 24 评论 -
【设计模式】外观模式——“知道有它就行了,内容不要你懂。”
最近在进行机房收费系统的重构,三层架构中加了两个设计模式——外观和抽象工厂。所以,又拿出了设计模式的书再复习一下。 再看外观模式就像一个主机的外壳——子系统内部有哪些接口你不需要知道,你客户端只要知道我外观层提供给的接口就好了。用外观模式, 就像米老师讲快速阅读时说的:“知道有它就行了,内容不要你懂。”原创 2016-02-02 20:04:35 · 727 阅读 · 23 评论 -
【设计模式】不就是换DB嘛(二)——升级版抽象工厂+反射+配置文件
上一篇博客和大家分享了抽象工厂在实践管理系统时能为我们带来的好处,同时也给大家提了抽象模式更改DB的几个问题,那么增加功能时有什么方法不需要更改添加那么多类呢? 换数据库的时候可不可以不更改程序呢? 下面分享下简单工厂+抽象工厂+反射+配置文件下的“换DB”。原创 2016-02-17 10:04:41 · 844 阅读 · 30 评论 -
【个人机房重构】策略模式在下机
策略模式是区别对待的典型, 它存在的意义就在于让系统对不同身份的“人”,给出相应不同的算法,比如商场购物, 高级会员7折,普通会员9折, 非会员客户原价,这种情况下给商场设计收银系统用策略模式就很实用。我们这次的机房收费系统重构也遇到了类似的问题, 就是算钱时,不同的人要有不同的收费方式。 所以这次就用上了策略模式。原创 2016-04-02 11:42:48 · 1074 阅读 · 32 评论 -
【设计模式】如果上天给我一次从头再来的机会——备忘录模式
“曾经有一分真诚的爱情放在我面前,我没有珍惜,等我失去的时候才后悔莫及,人世间最痛苦的事莫过于此。你的剑在我的咽喉上割下去吧!不用再犹豫了!如果上天能够给我一个再来一次的机会,我会对那个女孩子说三个字:我爱你。如果非要在这份爱上加上一个期限,我希望是——一万年!” 这段经典的表白台词曾经风靡一时,人们对台词之中那种悔之晚矣的切肤之痛都有着难以言说的回忆。那么如何设计一次从头再来的机会呢?像文档中的撤销那样。 今天我们一起来看一看备忘录模式。原创 2016-05-22 17:35:23 · 1354 阅读 · 44 评论