设计模式
好好生活_
这个作者很懒,什么都没留下…
展开
-
学习设计模式之初,面向对象再理解
要开始大话设计模式的学习了,看这本书的封面,感觉很轻松,很卡通,很有趣。一本新书怎么去读,怎么去学,老师讲过很多次了。一本书的前言是相当重要,它能帮助我们掌握全局,它也可能会给予我们一些指导。读完前言,我便知道自己下一步该做什么了。下一个脚步——面向对象再理解。关于面向对象,在学习C#的时候有了初步总结,但感觉很多概念理解得都不是很深刻。所以,在学习设计模式之初,很有必要再次进行总结。原创 2014-11-26 09:16:31 · 1476 阅读 · 23 评论 -
原来设计模式是这样的
设计模式第一遍用快速阅读的方式结束了。没有去敲实例,只是想着先把整本书从头到尾读完一遍。读完后,终于揭开了设计模式的神秘面纱。本篇博客还是选择以问题的角度入手,像学习UML一样,多问自己几个什么,从而得以把握其全局。一.什么是设计模式?看完书,我觉得设计模式就是在编程过程中根据不同的情况去选择运用固定的一系列模式,每次大鸟给小菜讲模式,都是根据实际发生的事,自然而然地引出该用什么模式了原创 2014-11-28 13:27:01 · 1500 阅读 · 20 评论 -
OOTV杯超级模式大赛——模式总结
设计模式的学习就要结束了,这么些天,一直徜徉在大鸟和小菜的故事世界之中。那一段段经典的对话,那一个个有趣而又充满知识的经历,真的让自己受益匪浅。除此之外,那场OOTV杯超级模式大赛,真的很精彩。那么,就让我们随着比赛的脚步,再一次充当观众,一起去回味,再次领略各种模式的魅力所在。主持人——GOF,首先出现在台前给大家问好。可能有人就会问了,为什么主持人会是她呢?其实,学习了设计模式的同学都原创 2014-12-19 19:31:57 · 2956 阅读 · 79 评论 -
设计模式之三个工厂
在学习设计模式的过程中,看到了三个模式很相似的名称,这一篇博客,就拿它们在一起说说。首先,这三个模式的名称分别是简单工厂、工厂方法和抽象工厂模式。对于前两个模式,感觉还比较好理解,抽象工厂模式真的很糊涂。也许,等这篇博客完工后,自己对它会更亲密些了。首先说第一个简单工厂模式。从类型上来说,它应该属于创建型模式,但它并不包含在上篇23种模式总结的范围之中。至于为什么,自己也不清楚。这也就让自原创 2014-12-07 09:43:21 · 1668 阅读 · 18 评论 -
大话设计模式之单例模式
一.引入小菜遇到的问题:“工具箱”窗体无法让其只出现一次。大鸟的回答:“工具箱”类也需要计划生育。二.解决过程① 最初的写法:private void Form1_Load(object sender,EventArgs e){ this.IsMdiContainer=true;}private void TolStripMenuItemToolbox_Cl原创 2014-12-01 10:32:17 · 1338 阅读 · 13 评论 -
设计模式之原型模式
一.引入小菜的问题:要把简历发到多家公司,简历的份数就必须足够。大鸟的回答:用编程来复制自己简历。二.解决过程① 最初的写法: 简历类:class Resume { private string name; private string sex; private string age;原创 2014-12-02 10:06:56 · 1420 阅读 · 14 评论 -
大话设计模式之建造者模式
一.引入大鸟与小菜吃到的炒面味道不同,而类似肯德基的快餐则不会出现这样情况。其中的原因就是他们的工作流程是非常规范的,时间、温度、热度都确定。这里的工作流程就是一种抽象的流程,此话我们如何去理解呢?二.解决过程① 建造小人一 Graphics gThin = pictureBox1.CreateGraphics(); gThin.DrawElli原创 2014-12-02 15:42:03 · 1373 阅读 · 11 评论 -
【机房合作】状态模式与上机
在机房收费系统中,有几个业务逻辑是比较复杂的,比如说上机、下机。记得我在做第一版VB收费系统的时候,还特别地将上下机拿出来画了一个完整的流程图,要不这样做的话,最后的结果一定是懵了,也不想再继续写代码了。 在进行设计模式的学习之前,我们很有必要将上机这一业务逻辑完整的梳理一遍。 一.上机业务逻辑 1.判断卡号是否存在 2.判断卡号是否使用 3.判断卡号余额是否充足 4.判断原创 2015-08-07 09:25:19 · 1334 阅读 · 21 评论 -
【机房合作】重新认识外观模式
机房收费系统合作版,是我们第三次与机房收费系统相遇的时刻。在个人重构的时候,我们就开始了“七层架构”之旅,其中外观模式是单独作为一层来开发的。 那个时候,也不理解外观是起到怎样一个作用,大话上的解释表面上容易理解,看完后自己也觉得很有道理。但在系统程序中,自己是只要经过BLL逻辑层的一个方法,就需要再经过一次外观,从而“解除耦合”,避免了UI层与BLL层之间直接传递数据。 那个时候,在敲代原创 2015-08-06 19:40:36 · 1164 阅读 · 22 评论