第1章 设计模式初见<br> 设计模式(DesignPattern)是一套经过分类的、被反复使用的软件代码设计经验的总结。使用设计模式是为了可复用代码,让代码更容易被理解,保证代码的可靠性。通常来说,设计模式是软件复用的基础理论,它使代码编制真正工程化。<br> 设计模式最初是在建筑学中被提出的,建筑师克里斯托佛·亚历山大在1970年代编撰了一本汇集设计模式的书,但是设计模式的思想在建筑设计领域里的影响远没有后来在软件开发领域里传播得广泛和深远。<br> 软件设计中的设计模式是在GoF(“四人帮”,指Gamma、Helm、JollIlson&Vlissides、Addison—Wesley四人)合著的《设计模式》一书中第一次提出的,随后被规范化。本书提出的23种基本设计模式便属于《设计模式》中所提及的经典的模式。<br> 1.1 一切从某个小超市开始<br> 在软件工程领域中研究一种具体的技术,通常都会借助一个具体的案例来分析和学习,在本书中也不例外,在每一章节的学习过程中,读者除了要学习和分析模式的案例,还将学习如何使用设计模式来解决一个现实工程中存在的问题。<br> 各章节的案例都来源于一个“超市”案例,因为“超市”对于大众来说都比较熟悉,其中发生的问题也比较容易理解。<br> 软件设计中的超市是什么样子的呢?其实本软件设计中就是使用软件来模拟人经营一个超市,现实生活中的超市中发生的各种情况在软件环境中都要提及并加以处理。比如要进行商品的上架、仓库进货、打折销售、客户服务、广告宣传等。<br> 在学习每一个模式时,为了达到良好的学习效果,读者最好能了解一下每一章涉及的超市问题发生的原因及需求,这对理解模式的意图是十分关键的。<br> 1.2 为何使用设计模式<br> 要回答为何要使用设计模式这个问题,必须要知道设计模式的优点。设计模式的优点如下:复用解决方案<br> 在代码设计中通常会遇到需要设计的方案和以前设计的某个方案类似的问题,比如之前已经设计过一个论坛系统,现在又要设计一个讨论版系统。这时,比较好的解决方案就是最大限度地利用之前设计的代码。<br> 设计模式的主要思想就是“复用”,通过复用已经确认的设计,能够在解决问题的过程中使用最小的成本获得最大的效益,而且可以在学习他人经验的过程中获利,不用再为那些总是会重复出现的问题重复设计解决方案。
展开