设计模式总结之没有结束的结尾

       设计模式是为程序代码优化而诞生的,目的是设计出易维护、容易拓展、易复用、灵活性好的程序。设计模式体现是面向对象的三大思想:封装、继承和多态。设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。

      学习设计模式的这段时间,写了一系列博客,不想表达什么,只是单纯的为了记录这个过程,不能再像当年学陈伟VB视频一样,什么都没有留下,每次接触一个新的设计模式,总是喜欢把她和生活中的某些场景联系起来,串成一个又一个故事,成了我一篇篇碎碎念的博文,下面一张图,简单概括一下设计模式。

       

        模式不是描述代码,替代的,它允许开发者之间通过去沟通问题的机制来使得问题得以解决。模式是对一个通用设计问题可以复用的解决方式。对于许多模式来讲, UML 图的描述可能不能全部描述清楚模式,例如,策略模式 和状态模式的UML图是一模一样的,但是它们本质是不同的,策略模式封装了算法,状态模式则强调当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了子类。这是我们学习模式的一个关键概念之一,这就是为什么和什么时候一个特定的情形应该被应用。举一个小例子,通常我们把创建了一些事的代码叫做工厂,然而不是每一个创建者都是一个工厂,笼统地叫工厂不能表达正确的讯息,实际上有两种不同的工厂模式,工厂方法和抽象工厂方法,明白模式之间的不同和理解不是所有的创建者都叫工厂,这有助于利用模式名称帮助开发者沟通。

        每天宿舍,食堂,南四楼的生活依旧在继续,编程也不会结束,每天,我还是继续着对程序,对爱情,对理想,对人生的期盼和向往,而学习设计模式的过程却要暂时告一段落,当然在以后的学习中还会陆续学习。最后,我们的面向对象编程之路才刚刚开始,相信通过我们的努力,我们的人生会更加精彩。

时间: 2024-10-14 17:42:02

设计模式总结之没有结束的结尾的相关文章

OOTV杯超级模式大赛——模式总结

设计模式的学习就要结束了,这么些天,一直徜徉在大鸟和小菜的故事世界之中.那一段段经典的对话,那一个个有趣而又充满知识的经历,真的让自己受益匪浅. 除此之外,那场OOTV杯超级模式大赛,真的很精彩.那么,就让我们随着比赛的脚步,再一次充当观众,一起去回味,再次领略各种模式的魅力所在. 主持人--GOF,首先出现在台前给大家问好.可能有人就会问了,为什么主持人会是她呢?其实,学习了设计模式的同学都知道,GOF来头可不小.下面就让我先给大家对GOF做一个简单介绍吧. GOF,全称Gang ofFour

《好学的C++程序设计》——2.1 数据分类入驻存储空间听候处理

2.1 数据分类入驻存储空间听候处理 好学的C++程序设计 2.1.1 基本数据分哪些类 我们平时所常用的基本数据类型有char(字符型).int(整数型).float(带小数点的数,称为实数型).double(双精度带小数点的数,简称双精度型). 其中,char型数据在计算机中实际就是以8位二进制码(ASCII码)所表示的一个整数.故从本质上说,char型也可看成是整数型.常用的字符见附录中ASCII码.字符可以对整型变量赋值.反过来,整数也可对字符类型变量赋值.二者是相通的.字符进行算术运算

机房收费系统vb.net之打包与部署(一)

     从机房重构到现在,我最大的感受就是万事开头难,万事结尾难!开头难是因为那个思路理不清,对三层已经设计模式的应用不够熟悉,结尾难就是打包部署了!这几天很头疼,以为完成了代码就大功告成了,可是没想到啊,打包与部署还容易,因为毕竟是在自己的电脑上64位系统和.net framework4.5的编译平台,没什么可改的,就是一步步来,可是到了XP系统上问题就多了,下面就一一的进行讲解:         首先,我的Visual studio是2013版本的,我就按13版本将一下打包:      

一种PHP设计模式:DPT

设计 PHP为什么在主流的应用中总是那么不出色,总是不如.Net/Java,就是因为在PHP处理大型应用的时候,那些不完整的面向对象机制.数据库处理的单一,不通用性等等,影响了PHP做大型应用.     * 作者:heiyeluren* 时间:2005-8-29* 联系:heiyeluren_at_gmail.com 一.DPT介绍 PHP为什么在主流的应用中总是那么不出色,总是不如.Net/Java,就是因为在PHP处理大型应用的时候,那些不完整的面向对象机制.数据库处理的单一,不通用性等等,

[Head First设计模式]生活中学设计模式——迭代器模式

系列文章 [Head First设计模式]山西面馆中的设计模式--装饰者模式 [Head First设计模式]山西面馆中的设计模式--观察者模式 [Head First设计模式]山西面馆中的设计模式--建造者模式 [Head First设计模式]饺子馆(冬至)中的设计模式--工厂模式 [Head First设计模式]一个人的平安夜--单例模式 [Head First设计模式]抢票中的设计模式--代理模式 [Head First设计模式]面向对象的3特征5原则 [Head First设计模式]鸭子

[设计模式实践之路](1)单例模式

[简介] 单例模式(Singleton)保证一个类仅有一个实例,并提供一个访问它的全局访问点.      实现单例模式的一个最好的方法就是让类自身负责保存它的唯一实例.这个类可以保证没有其他实例可以创建,并且它可以提供一个访问该实例的方法. [特点] 单例模式具有一下特点: 单例类只有一个实例 单例类必须自己创建自己的唯一实例 单例类必须给所有其他对象提供这一实例 [分类] 主要的就是懒汉单例,饿汉单例 [懒汉单例] package Mode; /** * Java设计模式之单例模式 * @au

设计模式之三个工厂

在学习设计模式的过程中,看到了三个模式很相似的名称,这一篇博客,就拿它们在一起说说. 首先,这三个模式的名称分别是简单工厂.工厂方法和抽象工厂模式.对于前两个模式,感觉还比较好理解,抽象工厂模式真的很糊涂.也许,等这篇博客完工后,自己对它会更亲密些了. 首先说第一个简单工厂模式.从类型上来说,它应该属于创建型模式,但它并不包含在上篇23种模式总结的范围之中.至于为什么,自己也不清楚.这也就让自己想到了一个问题,模式的分类为什么分为创建.结构和行为三大类呢?这个问题可以在第三遍设计模式的时候思考思

C# 设计模式----抽象工厂模式

原文地址:C#设计模式(4)--抽象工厂模式 一.引言 在上一专题中介绍了工厂方法模式,工厂方法模式是为了克服简单工厂模式的缺点而设计出来的,简单工厂模式的工厂类随着产品类的增加需要增加额外的代码),而工厂方法模式每个具体工厂类只完成单个实例的创建,所以它具有很好的可扩展性.但是在现实生活中,一个工厂只创建单个产品这样的例子很少,因为现在的工厂都多元化了,一个工厂创建一系列的产品,如果我们要设计这样的系统时,工厂方法模式显然在这里不适用,然后抽象工厂模式却可以很好地解决一系列产品创建的问题,这是

jsp设计模式

js|设计 jsp设计模式一:介绍 记得初学jsp的时候,总喜欢把他和asp,php去比较,也习惯于使用asp的开发模式去写jsp,后来才发现这真是很傻的做法,其实jsp一出了来就已经用MVC模式了.下面我就简要说说jsp设计使用MVC来设计. 二:MVC介绍 MVC其实是模.视图.控制的缩写,也就是说在使用jsp时,有相应的文件去实现相应的操作.通常jsp只负责view也就是只负责显示页面.业务逻辑等有bean(ejb)去实现.下面讨论的是不使用ejb的情况下实现.如果使用ejb,ejb负责M