第四章讲的是模式,并没有直接进入到面向对象分析的阶段,作者之所以这样做,我觉得是
因为在面向对象分析和设计的过程中,模式的使用对项目非常有帮助,才特意停下来开辟一
章给读者做一些模式知识的普及工作。
作者说到他刚读完《设计模式》时,头脑中反复出现的问题,包括:
·模式的概念是从哪里来的?
·什么是模式?
·模式和设计模式等价吗?开发人员常说的架构模式、GRASP模式又分别是什么东西呢?
·设计模式能为我们的软件开发带来什么?
·设计模式能减少代码量吗?
·设计模式能缩短开发周期吗?
·设计模式能提高软件的执行效率吗?
·设计模式和数据结构或算法有关吗?
·如何学习和实践设计模式?
·不同的设计模式之间有什么内在的关联?
·设计模式背后有什么核心的,或者说指导性的设计原则和设计理念吗?
·设计模式如何分类?
我们要学习掌握一个新东西的时候,也应该有这样一些问题才好,知道了这些问题的答案,
新东西也就可以说是完全掌握了。第4章后面的一大部分就是对这些问题的回答。
亚历山大在《建筑模式语言》一书中对模式的定义为:“每一个模式描述了一个在我们的环
境中不断发生的问题,并且描述了解决该问题的核心方案,这样你就可以多次使用这一解决
方案,而不必重复劳动”。根据模式的的定义,要以格式化的结构记录模式,以下四个基本
元素应该是不可少的:
模式的名称;(便于交流)
该模式所能解决的问题;
解决方案;
使用该模式后的结构(优缺点)。
在软件开发领域,人们提出了各种不同类型的模式,根据模式的特点和用途,可以分为以下
三类:
·架构模式:架构模式描述了软件系统基本的结构组织策略。
·设计模式:设计模式描述的是在软件系统的某一局部不断重现的核心解决方案,这种
解决方案以完善的设计结构出现,可以被应用到以后出现的类似的语境中。
·通用职责分配软件模式(GRASP模式):GRASP模式描述了在面向对象设计过程中职责
分配给系统中不同对象的有效经验和基本原则。
在《设计模式》一书中共列出了23种模式,这些模式之所以能够解决指定的问题,是由于它
们遵循了面向对象设计原则和设计理念:
·设计模式最根本的意图是适应需求变化;
·针对接口编程,而不是针对实现编程;
·优先使用聚合,而不是继承。(继承的耦合度要远远大于聚合)。
设计模式一般有两种分类方式:我们既可以按照设计模式的目的对它分类,也可以按照设计
模式的范围进行分类。这种按不同的标准,对模式进行分类,以加强对模式的理解和记忆的
方法,也是值得我们学习的。
分享到:
相关推荐
学生读书笔记共享-学生读书笔记共享系统-学生读书笔记共享系统源码-学生读书笔记共享管理系统-学生读书笔记共享管理系统java代码-学生读书笔记共享系统设计与实现-基于springboot的学生读书笔记共享系统-基于Web的...
学生读书笔记共享-学生读书笔记共享系统-学生读书笔记共享系统源码-学生读书笔记共享管理系统-学生读书笔记共享管理系统java代码-学生读书笔记共享系统设计与实现-基于springboot的学生读书笔记共享系统-基于Web的...
计算机网络设计第一章读书笔记------.pdf该文档详细且完整,值得借鉴下载使用,欢迎下载使用,有问题可以第一时间联系作者~
多态是面向对象的第三个核心特性,它指的是同一种行为在不同的对象上表现出不同的形式。多态可以通过方法重载(Overloading)和方法重写(Overriding)来实现。在Java中,多态允许我们使用父类的引用指向子类的对象...
随着面向对象程序设计思 想的日益普及,很多支持面向 对象程序设计方法语言也相继 出现了,C++就是这样一种语 言。C++是Bjarne Stroustrup 于1980年在AT&T的贝尔实验 室开发的一种语言。
《技术人的管理之路》读书笔记 --思维导图 《技术人的管理之路》读书笔记 --思维导图 《技术人的管理之路》读书笔记 --思维导图 《技术人的管理之路》读书笔记 --思维导图 《技术人的管理之路》读书笔记 --思维导图 ...
Hadoop权威指南----读书笔记
学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书...
学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书...
学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书笔记共享平台-学生读书...
《鼠疫》读书笔记800字-读书笔记_1.docx
不过,我可以根据“读书笔记模版”给出一般性的建议。 在阅读和学习IT相关书籍时,制作读书笔记是一种非常有效的学习方法。以下是一个可能的读书笔记模版,用于记录和理解IT知识: 1. **书籍信息**: - 书名:...
C#高级编程《第7版》读书笔记(1-3章).pdf
《老子心解》读书笔记(1-5章).pdf
R语言数据科学读书笔记_R-for-data-Science
《java并发编程实战》读书笔记-第3章-对象的共享,脑图形式,使用xmind8制作 包括线程安全类设计、实例封闭、线程安全性委托、现有线程安全类中添加功能和文档化同步策略等内容