架构师之路—理解设计模式

栏目: IT技术 · 发布时间: 5年前

内容简介:在《周期》中作者这样描述过模式:“人类必须生活在现实世界中。我们寻找模式和规律,能够让我们活得更加舒服,也获利更多。”你曾经多少次有过这种感觉—你已经解决过了一个问题,但就是不能确切知道是在什么地方或怎么解决的?如果你能记起以前问题的细节和怎么解决它的,你就可以复用以前的经验而不需要重新发现它。然而,我们并没有很好记录下可供他人使用的软件设计经验。设计模式的目标是将设计经验以人们能够有效利用的形式记录下来。来复用设计经验,很多问题不必要再从头做起。设计模式的起初还是来源于建筑业。设计模式的定义:“每一个模式

在《周期》中作者这样描述过模式:“人类必须生活在现实世界中。我们寻找模式和规律,能够让我们活得更加舒服,也获利更多。”

为什么会有设计模式?

你曾经多少次有过这种感觉—你已经解决过了一个问题,但就是不能确切知道是在什么地方或怎么解决的?如果你能记起以前问题的细节和怎么解决它的,你就可以复用以前的经验而不需要重新发现它。然而,我们并没有很好记录下可供他人使用的软件设计经验。设计模式的目标是将设计经验以人们能够有效利用的形式记录下来。来复用设计经验,很多问题不必要再从头做起。

设计模式的定义

设计模式的起初还是来源于建筑业。设计模式的定义:“每一个模式描述了一个在我们周围不断重复发生的问题, 以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动”(这个定义是Christopher Alexander 说的(Christopher Alexander,1936年10月4日生于奥地利维也纳)是加州大学伯克利分校的终身教授和承包商,同时也是建筑师。)尽管Alexander所指的是城市和建筑模式,但同样也适用于面向对向设计模式。最近理解同样也可以用于其他行业的模式,如投资寻找相应的模式和规律进而找到人生获胜的公式。

设计模式的元素

设计模式有四个基本的元素模式名称、问题、解决方案、效果。

1.模式名称:一个助记名,用一两个词来描述问题、解决方案和效果,便于同行间沟通交流。

2.问题:描述问题相关背景和问题的上下文,问题产生的前因后果,有时候描述 设计模式 的先决条件。

3.解决方案:问题解决方案,是设计的组成部分,描述了对象间的各自的关系和职责和协作方式。描述怎样通过一般的元素组合来解决问题的。

4.效果:描述模式应用的效果和使用模式的权衡问题。决策的过程也很重要。这个包含了两个重要的点,模式应用后的效果和选用模式如何去权衡的。、

设计模式的学习和运用

模式就像是一个模板,可以应用于多个场合来形成一种经验。不管是在建筑业,还是IT业,还是其他行业,模式都可以一次又一次去复用,尤其是历经过考验的成功的一些模式。在学习设计模式的过程中,一方面是学习软件行业已有的设计模式,另一方面学习如何记录软件设计或者其他方面的遇到的问题形成自己一个模式库。

我们努力想要看透人生,方法是识别模式,进而找到人生获胜的公式。


以上所述就是小编给大家介绍的《架构师之路—理解设计模式》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

灵活Web设计

灵活Web设计

Zoe Mickley Gillenwater / 李静 / 2009-9 / 45.00元

《灵活Web设计》讲述如何应用可变或不固定布局及弹性布局来实现灵活设计,以满足用户的根据自己需求而调整浏览站点的窗口大小的要求。全书共分为9章,内容包括:理解灵活布局、可变布局和弹性布局存在的挑战、设计灵活布局的方法、准备网页设计、创建可变布局结构、创建弹性布局结构、规范灵活性、设置文字间距、添加背景图像和颜色、创建灵活的图像。 《灵活Web设计》适用于网页设计人员、网页设计爱好者。一起来看看 《灵活Web设计》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试