《设计模式解析(第2版•修订版)》—第1章复习题

复习题
设计模式解析(第2版•修订版)
简答题
1.叙述功能分解中使用的基本方法。

2.导致需求变更的三个原因是什么?

3.我提倡用责任而不是功能来思考。这意味着什么呢?请举出一个例子。

4.给出耦合和内聚的定义。什么是紧耦合?

5.对象接口的目的是什么?

6.给出类实例的定义。

7.类是一个对象行为的完整定义。这句话说明了对象的哪三个方面?

8.抽象类的作用是什么?

9.对象可能具有的三种主要可访问性1是什么?

10.给出封装的定义,并举出一个行为封装的例子。

11.给出多态的定义,并举出一个多态的例子。

12.观察对象的三种视角是什么?

阐述题
1.有时候,程序员使用“模块”来隔离不同区域的代码。这是应对需求变更的有效方式吗?为什么?

2.将抽象类定义为不能实例化的类局限性很大,为什么呢?抽象类更好的(或者至少,另一种)理解方式是什么?

3.行为的封装是怎样帮助限制需求变更带来的影响的?它又怎样挽救程序员免于无意导致的副作用?

4.接口怎样有助于保护对象不受其他对象变化的影响?

5.在一个系统中要使用教室作为描述对象。请从概念视角描述教室。

观点与应用题
1.需求变更是系统开发人员所面临的最大挑战之一。请从你自己的亲身经历中找出一个支持这一说法的例子。

2.功能分解方法在遇到需求变更时存在本质上的弱点。你同意这种说法吗?为什么?

3.你认为应对需求变更的最佳方法是什么?

1即可见性。——译者注

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

时间: 2024-09-28 02:32:31

《设计模式解析(第2版•修订版)》—第1章复习题的相关文章

求大神解答一下-C++ primer plus 第6版 中文版 第16章复习题的一个问题

问题描述 C++ primer plus 第6版 中文版 第16章复习题的一个问题 奇葩的是课后居然没答案...... 求正规.严谨.简洁的标准答案! 程序清单16.15(在p708页):functor.cpp //functor.cpp--using a functor #include尖括号iostream尖括号 #include尖括号list尖括号 #include尖括号iterator尖括号 #include尖括号algorithm尖括号 template//functor class

《设计模式解析(第2版•修订版)》—第2章 2.1节概览

第2章 UML2.1 概览设计模式解析(第2版•修订版)本章内容 本章将简单概述UML(统一建模语言),这是面向对象界主要使用的一种建模语言.如果你还不知道UML,阅读本章将使你具备阅读本书模型图所需的最低限度的知识. 本章中,我们将: 叙述"什么是UML"和"为什么使用UML": 阐述本书中的基本UML图,即 类图: 交互图. 本文仅用于学习和交流目的,不代表异步社区观点.非商业转载请注明作译者.出处,并保留本文的原始链接.

《设计模式解析(第2版•修订版)》—第2章 2.6节小结

2.6 小结设计模式解析(第2版•修订版)本章内容 UML既能够充实设计,又能够用于设计的交流.不要太担心要"正确地"画图.要考虑的是什么方式最有利于交流设计中的概念.换句话说,如果你认为有什么东西需要说,可以用注释来表达. 如果你对一个图标或符号不太确定,必须查手册才能确定其意义,还是加一条注释来解释.毕竟,其他人有可能也不清楚它的意义.清晰为好.当然,这也意味着你应该以规范的方式使用UML--那样无法正常交流.在画图的时候,只考虑要传达的思想即可. 本文仅用于学习和交流目的,不代表

《设计模式解析(第2版•修订版)》—第1章 1.1节概览

1.1 概览设计模式解析(第2版•修订版)本章内容 本章将通过与大家都熟悉的范型--标准结构化程序设计比较异同的方式,来介绍面向对象范型. 当年,面向对象范型正是为了应对使用标准结构化程序设计遇到的诸多挑战才应运而生的.弄清楚这些挑战,我们才能够更好地看到面向对象程序设计的优点,并更好地理解这一机制. 本章无法使你成为面向对象方法的专家,甚至不会介绍所有基本的面向对象概念.但是,本章将使你为阅读本书其他部分做好准备.本书其他部分将阐释如何像专家所做的那样正确使用面向对象设计方法. 本章中,我们将

《设计模式解析(第2版•修订版)》—第1章 1.9节小结

1.9 小结设计模式解析(第2版•修订版)本章内容 本章中我说明了面向对象技术是怎样帮助我们最大程度地减少系统需求变更带来的影响,以及面向对象与功能分解的异同. 我还讨论了面向对象程序设计的许多基本概念,介绍和描述了主要术语.表1-3总结了这些概念,表1-4总结了面向对象程序设计的主要术语. 本文仅用于学习和交流目的,不代表异步社区观点.非商业转载请注明作译者.出处,并保留本文的原始链接.

《Internet 路由结构(第2版•修订版)》一第3章 IP编址及分配技术3.1 Internet编址历史

第3章 IP编址及分配技术 Internet 路由结构(第2版•修订版) 本章包括如下主题. Internet编址概述--概括了IPv4的三类(A/B/C)编址方案,以及子网划分的基本概念. 可变长子网掩码(VLSM)--什么是可变长子网掩码,以及如何利用VLSM有效地分配IP地址空间. 互联网地址空间的耗尽问题--讨论了几种应对IP地址空间耗尽的方法:创造性的地址分配技术.超网技术.私有编址技术以及下一代网络协议. 私有编址和网络地址转换技术(NAT)--介绍了如何利用NAT软件在私有地址和公

《Internet 路由结构(第2版•修订版)》一第7章 冗余、对称和负载均衡7.1 冗余

第7章 冗余.对称和负载均衡 Internet 路由结构(第2版•修订版) 本章包括如下主题. 冗余--链路故障发生时,通过备用路由来保障网络的稳定是路由架构中最为重要的设计目标之一. 设置默认路由--配置默认路由是建立冗余连接的基本方法.存在多条默认路由时,就需要通过优先级来"排定座次". 对称--设置路由,确保流量及其反馈流量从同一点进出AS,这往往也是路由架构的设计目标之一. 负载均衡--让多条链路同时分担流量,以获取最优的网络性能. 具体的场景--针对冗余.对称及负载均衡,深入

《VoIP技术构架(第2版·修订版)》一第1章 PSTN概览及与VoIP的比较

第1章 PSTN概览及与VoIP的比较 VoIP技术构架(第2版·修订版) 本章包含以下主题: 1.1 PSTN起源 1.2 PSTN基础 1.3 PSTN服务与应用 1.4 语音与数据网合二为一的驱动力 1.5 分组电话网络的驱动力 1.6 新PSTN网络架构模型 1.7 小结 第1章 PSTN概览及与VoIP的比较 自从亚历山大·格雷厄姆·贝尔(Alexander Graham Bell)在1876年第一次在线路上成功传输声音以来,公共交换电话网(Public Switched Teleph

《C++入门经典(第5版•修订版)》——6.8 作业

6.8 作业 C++入门经典(第5版•修订版)本章介绍了一些复杂的程序流程,您现在应该能够回答几个问题并完成两个练习,以巩固这方面的知识. 6.8.1 测验 1.在for语句中应使用哪种数据类型? A.整型 B.整型或浮点数 C.任何数据类型都可以 2.哪种循环不能使用break或continue语句? A.for B.for和while C.无 3.在switch语句中,break命令有何作用? A.跳到下一个case B.结束switch语句 C.跳到default部分 6.8.2 答案 1

《C++入门经典(第5版•修订版)》——第6章 控制程序流程

第6章 控制程序流程 C++入门经典(第5版•修订版)本章介绍如下内容: 什么是循环?如何使用它们?如何创建各种循环?使用switch-case进行复杂的条件测试.