软件开发领域,为什么要提出“设计模式”的概念?

来源:百度知道 编辑:UC知道 时间:2024/06/02 04:56:28
请简述之。
说的还不错。不过更正你一下:GoF而不是BoF

设计模式的概念源自于建筑学领域,美国建筑学家Christopher Alexander在其著作《建筑的永恒之道》中提出了模式的概念。这里的模式是指:对于常见问题的通用解决方案。这个概念提出后,在软件工程领域被采纳和沿用,从而发展出了软件工程的各种模式,包括:分析模式、设计模式、体系结构模式、过程模式等等。其中,软件设计模式应用最为广泛,影响最大。

至于为什么要提出“软件设计模式”,是因为,很多的软件工程师在为不同的软件做设计时,经常会遇到一些重复出现的问题,例如:如何使代码能够更加方便的扩展——也就是当新需求出现时,只需要添加代码而不需要对已经编写好的代码进行修改;如何使得程序中不同的关注点尽量的分离,从而当需求或实现的决策发生变化时,只有局部的代码需要修改,而不是全局的大调整,等等。这些问题,在不同的上下文环境中,也就是在不同的具体情况下,一些牛人总结了非常优雅的解决方案。如果这些解决方案能够为更多的人理解和掌握,那么就会使得大家设计出来的软件具有更好的结构。为此,牛人们开始思考如何将这些解决方案以人们易于理解和应用的方式记录下来。直到有一天,四位牛人(也就是软件设计模式中著名的四人组合,GOF)发现建筑学里一个叫做模式的概念很好,如果用模式来表达他们在软件设计中的经验和知识,那么不但说得明白,而且易于采用。因此,他们就提出了“软件设计模式”这样的概念,并且总结了23个设计模式,出了一本书——《设计模式:可复用面向对象软件的基础》。随着这本书的热销,设计模式的概念就在人民群众中普及开来了。

打字打得手都酸了,楼主还满意吗?

————
呵呵,确实是GOF,打错了。