设计模式的前世今生

2021-08-17  本文已影响0人  叶华_YH

前言

软件模式。软件模式是将模式的一般概念应用于软件开发领域,即软件开发的总体指导思路或参照样例(编码,架构,需求分析以及过程分析等)。软件模式并不专门代指设计模式,还包含架构模式,分析模式和过程模式等。在软件开发、存续期的每一个阶段都有其适用的模式。由此可以看出设计模式仅是软件模式中的一种。

设计模式的前世

说起设计模式的前世,我们先要了解一下模式是如何诞生与发展的。与很多软件工程技术一样,模式起源于建筑工程领域。由杰出理论建筑家、公认的模式之父克里斯托弗·亚力山大(Christopher Alexander)在《建筑模式语言》一书中指出-"每个模式都描述了一个在我们的环境中不断出现的的问题,然后描述了该问题的解决方案的核心,通过这种方式,你可以无数次使用那些已有的解决方案,无需再重复相同的工作"

《建筑模式语言》一出版就受到建筑界的广泛重视和高度赞誉,并对建筑业产生了深远的影响。书中别出心裁且有根有据地描述了城镇、邻里、住宅、花园和房间等共253个模式,提供了一幅幅设计、规划、施工等方面的崭新蓝图,构思新奇,妙想迭出,不同流俗。

建筑模式语言

通过上述表述我们模式的起源已经略知一二,作为本系列文章而言。我们也只需要做到略知一二即可,本系列文章重点还是在于软件设计模式的讲解以及基于php去实现它。

设计模式的今生

最早将模式这个概念引入到软件工程的是由GoF(Gang of Four)四人组(Erich Gamma,、Richard Helm,、Ralph Johnson、John Vlissides)于1994年发表了 《Design Patterns Elements of Reusable Object-Oriented Software》又称《设计模式-可复用面向对象软件的基础》该书详细讲解了可用于软件工程领域的23种常用设计模式。

组成部分

软件模式的基础结构主要由四部分构成

问题描述 需要解决的问题

前提条件 解决问题的前提条件

解觉方案:问题的解决方案

效果:达成的效果,以及基于效果分析出优缺点

设计模式组成部分

结论

综上所述我们可以知道,设计模式并不一定就是一个类库或者其他第三方框架,它们更多的表现为一些解决问题的思想并且能广泛应用于日常软件工程工作中,可以在不同开发场景中解决所遇见的问题。设计模式可以用于加速并规范化进行开发工作。 一个模式就是一个可复用解决方案,一个模式解决了一类特定的问题,使用设计模式是为了增强代码本身的可复用性,可读性以及可靠性。使代码编制真正实现工程化。设计模式是软件工程的基石。项目中合理的使用设计模式可完美的解决很多问题。每种模式都有其对应的原理与之一一对应。

上一篇下一篇

猜你喜欢

热点阅读