1 / 6
文档名称:

设计模式是什么.docx

格式:docx   大小:97KB   页数:6页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

设计模式是什么.docx

上传人:小雄 2021/11/19 文件大小:97 KB

下载得到文件列表

设计模式是什么.docx

相关文档

文档介绍

文档介绍:设计模式是什么?
设计模式是这些原则在某些特定公共场景下标准化的应用,接下来让我们通过一些例子学****什么是设计模式。
Farhana:当然,我喜欢例子。
Shubho:让我们以汽车为例讨论一下。汽车是一个很复杂的对象,由成千上万的其它对象 组成,如发动机,车轮,方向盘,车座,车体等等其他不同的部分或部件。
汽车部件
当装配汽车时,制造商需要集中并装配这些更小的自成汽车子系统的不同部件。而这些不同 的小部件同样也是复杂的对象,其它制造商同样要生产并组装它们。在生产汽车时,汽车公 司并不会为怎么生产组装这些部件操心(前提是他们要确保这些对象/设备的质量)。当然, 汽车制造商更加关心怎么装配这些不同部件以便能生产不同型号的汽车。
通过遵循不同的设计,组装不同的部件,生产不同型号的汽车
Farhana:汽车制造公司必须有如何生产不同型号汽车的设计图或蓝图,对吗?
Shubho:当然,并且这些设计都是良好的,他们花费大量的时间和精力来做这些设计。一 旦设计完成,生产汽车就仅仅是照葫芦画瓢了。
Farhana:嗯。如果事先有一些好的设计,就能在短时间内遵照这些设计生产不同产品,并 且制造商在每次生产某一个型号产品时就不需要重新设计或重新发明车轮,他们只需要按照 已有的设计办事就行了。
生产不同型号产品(汽车)的不同设计图
Shubho:你抓到重点了。现在假设我们是软件生产商,我们使用基于需求而来的不同组件 或功能构建各种不同的软件程序。当生产这些不同软件系统时,我们常常需要为一些不同软 件系统中存在的相同情况开发代码,对吗?
Farhana:是的,在开发不同软件程序时经常遇到相同的设计问题。
Shubho:我们尝试使用面向对象的方式开发软件,并尝试应用OOPD来让代码能易于维 护,可复用,可扩展。无论什么时候,当我们遇到这些设计问题时,如果我们有一组经过谨 慎开发,良好测试的对象以供使用会不会更好呢?
Farhana:是的,这样能够节省时间,生产出更好的软件,且利于以后维护。
Shubho:很好!从设计上来说,它的好处是你不需要开发那些对象。经过多年发展,人们 已经遇到过一些类似的设计问题,并已经形成有一些公认的,良好的已标准化的设计方案。 我们称之为设计模式。
我们一定好感谢四人组,他们在《设计模式:可复用面向对象软件设计》中总结出了23种 基本的设计模式。四人组山 Erich Gamma, Richard Helm, Ralph Johnson,和 John Vlissides组成。实际中有很多面向对象设计模式,但这23种模式被公认为是所有其他设计 模式的基础。
Farhana:我能发明一个新的模式吗?这可能吗?
Shubho:当然,亲爱的,为什么不能呢? !设计模式不是山科学家发明创造的。它们是被 发现找到的。这意味着任何通用问题场景中都有一些好的设计方案在那。如果我们能够指出 一个能够解决一个新的设计相关问题的面向对象设计,那么这将会是一个由我们定义的新的 设计模式。谁知道呢?!如果我们发现找到一些设计模式,或许将来有一天人们会称我们为 二人组,哈哈。
Fahana::)
我们将如何学****设计模式?
Shubho:我一直认为例了是学****的最好途径。在我们的学****方法中,我们不会先讨论理论 后