模式简介

设计模式是一种在软件设计中反复出现的问题解决方案,源于实践中并具有通用性。本文介绍了面向对象编程的基本思想,强调了设计原则的重要性,如单一职责原则、开放封闭原则等,并指出模式的应用有助于更好地实现这些原则。同时,文章探讨了模式的分类,提醒设计师要适时运用模式,避免盲目追求模式的使用。

什么是模式

    每个模式描述了一个在我们周围不断重复发生的问题以及该问题解决方案的核心。这样,你就能一次有一次地使用这个方案而不必重复劳动。[Alexander et al]

模式的核心是特定的解决方案,它有效而且有足够的通用性,能解决重复出现的问题。

模式的关键点在于他们源于实践。必须观察人们的工作过程,发现其中好的设计,并找出“这些解决方案的核心”。

面向对象编程与模式

面向对象编程是将现实世界抽象为程序语言的编程方法,只是一种思想。现实世界的各种对象并不能用完全面向对象的方法描述清楚,所以只能在现有条件下追求好的面向对象编程方法。

模式是解决问题的一类通用专家方案,在面向对象编程中应用模式可以达到更好的面向对象。

设计原则与模式

设计原则:

针对接口编程,而不是针对实现编程

优先使用对象组合,而少用继承

封装变化点

具体的设计原则:

单一职责原则

开放封闭原则

Liskov替换原则

依赖倒置原则

接口隔离原则

设计原则是面向对象编程的基本原则,模式是为了更好的实现这些设计原则,因此,为了有效地设计,而去熟悉某种模式所花费的代价是值得的。[摘自微软webcast讲座]

设计模式

    设计模式只是模式的一种,一般来说,模式分为三种:企业架构模式、设计模式、一般方法。具体可以参考《面向模式的软件体系结构》。

    其实在软件设计人员中,唾弃设计模式的可能很少,盲目夸大设计模式功用的反而更多。言必谈“模式”,并不能使你成为优秀的架构师。真正出色的设计师,懂得判断运用模式的时机。还有一个问题是,很多才踏入软件设计领域的人员,往往对设计模式很困惑。对于他们来说,由于没有项目的实际经验,OO 的思想也还未曾建立,设计模式未免过于高深了。其实,即使是非常有经验的程序员,也不敢夸口对各种模式都能合理应用。[--摘自wayfare的设计之道]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值