admin 管理员组文章数量: 1184232
2024年1月23日发(作者:工业相机接口类型)
软件设计与体系结构智慧树知到课后章节答案2023年下云南大学
云南大学
第一章测试
1. 以下对软件架构师、软件工程师、系统分析师表述正确的是?( )
答案:
软件工程师一般专注于模块级、功能代码级的开发工作,针对功能模块级的代码细节要求较高,但对系统级的架构设计要求较低。对业务分析、项目管理、运营维护、法律规定则不做过多要求。;系统分析师的主要职责是在于需求分析、开发管理、运行维护、法律法规等方面。对代码细节开发不做过多要求,但需要掌握一定的软件架构知识。;软件架构师的重点工作是架构与设计这两个关键环节上,因此,对设计、架构、代码撰写都有较高的要求。但是,对需求分析、项目管理、运管管理、法律法规的要求相对较低。
2. 《软件工程》主要聚焦于有关软件需求分析,软件过程模型,软件项目管理、软件运营维护、软件迭代升级等软件生命周期的相关理论和方法学。( )
答案:
对
3. 《软件设计与体系结构》则聚焦于软件的设计原则和架构模式。以撰写高质量程序代码为目标,通过四个层次的方法学理论,指导开发者在不同的条件下,撰写较为高质量的程序代码。( )
答案:
对
第二章测试
1. GRASP设计原则主要指导开发者进行:( )
答案:
职责设计
2. 信息专家原则的主要含义是?( )
答案:
一个类能否分配一个职责的基本条件是该类是否拥有执行该职责的全部信息
3. 以下哪种情况中,创建者的关系强度最高?( )
答案:
A类组合B类(B是A的成员,B实例不能离开A实例单独存在)
4. 以下耦合关系中,哪种耦合强度最高?( )
答案:
A类引用B类
5. 以下说法相对正确的是?( )
答案:
类和模块的内部应该尽量的提高内聚,外部应该降低耦合;类和模块的应同时考虑高内聚和低耦合原则
6. 控制器原则的主要含义是?( )
答案:
应该尽量将功能控制代码分配在一个单独的控制器实现类中,UI默认调用抽象控制器类来执行功能;在各类编程语言的类库中,常见的控制器类有handler, Action, Listener等。;应该尽量将功能控制代码分配在一个单独的控制器中,而不应绑定在UI组件上
7. 以下哪些方式可以实现多态?( )
答案:
继承;实现
第三章测试
1. 以下对开-闭原则的阐述正确的是?( )
答案:
并不是所有程序代码设计都要遵循开闭原则,特别是长期稳定的代码块,扩展的成本甚至会远高于修改的成本。;程序设计最好都提前考虑开闭原则的使用程度,在设计时需要分析可能会持续发生变化的业务所对应的类设计。
2. 以下对单一职责原则描述正确的是?( )
答案:
如果类的某个职责分化时,可以考虑对类型进行分化;在类的继承链中,由职责分化带来的类分化原因应当是单一的,即,不应由多个分化职责来构成继承关系;类的继承应该尽量建立在类的属性划分上,而不应该建立在类的行为划分上;如果类的多个职责分化时,对应的类型分化可能会带来类型爆炸的风险
3. 以下对依赖倒置原则描述正确的是?( )
答案:
依赖于抽象并不是特指必须是编程语言上的抽象类或接口,而是指业务中相对抽象的概念;依赖倒置原则是间接原则的一种特化,其要求中间类必须是抽象的
4. 以下对合成复用原则描述正确的是?( )
答案:
应该避免由职责(行为)的分化而带来的类的分化;职责(行为)分化时,可以考虑剥离分化的行为,需要时再组合注入到相应的对象中
5. 以下对接口隔离原则描述正确的是?( )
答案:
接口是抽象的,一个接口可以有多个实现类。而一个类又可以实现多个接口;接口中可以有多个方法,但需要尽量保持这些方法在业务中是内聚的
6. 以下对迪米特原则描述正确的是?( )
答案:
对外提供引用时,我们应该尽可能少的对外暴露知识;我们可以使用继承产生的多态性质,实现有选择的对外知识暴露;我们可以实现多个接口,使得一个类可以选择不同的侧面进行知识暴露
第四章测试
1. 抽象反射工厂模式的含义是?( )
答案:
这里的抽象指的是被创建的对象是抽象态的;这里的反射指的是具体要创建的对象是通过完整类名的字符串创建的
2. 抽象组合反转模式的含义是?( )
答案:
这里的反转指的是行为的具体实现是运行时动态注入的;这里的抽象指的是行为应该是抽象类或接口
3. 以下对观察者模式描述正确的是?( )
答案:
观察者数据同步模式要求被观察者只发送更新通知和更新目录,观察者也需要掌握一定的主动权,根据更新通知和更新目录,自主选择需要同步的数据;经典的观察者模式是一种消息传递控制模式,根据信息专家原则,由被观察者掌握数据更新的主动权,观察者被动的接收更新数据
4. 以下对拦截器认证责任链模式描述正确是?( )
答案:
一般情况下,通过权限(Permission)对某个方法进行控制的思路能够较为灵活和动态的实现访问控制;责任链模式能够将复杂的职责拆解为多个更小粒度的职责,按照一定的顺序连接起来组合使用,每个小的职责可以满足单一职责原则。;目前,一般用于权限认证的系统模块,会采用拦截器进行权限的检查,而拦截器的实现可以采用责任链模式。
5. 以下对面向切面(AOP)编程模式描述正确的是?( )
答案:
具体的,面向切面编程可以采用装饰器模式来实现,也可以基于框架采用注解(如@ []等)来实现;面向切面编程的重要目的是动态的给原有方法添加新能功能,而不需要修改原方法;面向切面编程的基本原理是在原方法执行之前和执行之后,加入而外功能代码;面向切面编程基于代理模式的思想
第五章测试
1. 以下对分层架构模式描述正确的是?( )
答案:
根据不同的调用目的划分软件构件层级,将需求变化聚集在不同的层级之内;根据确定的层次边界划分职责,提升系统的可扩展性和可维护性
2. 以下哪些类型属于领域模型?( )
答案:
失血模型;贫血模型;充血模型
3. 以下关于领域模型的描述中,正确的是?( )
答案:
失血模型中,领域对象(Domain Object)仅包含对象属性的定义和操作对象属性的访问器方法。这样的对象也被称为简单的Java对象(POJO);贫血模型中,领域对象包含对象属性的定义、操作对象属性的访问器方法和对象的行为, 但不包含依赖持久层业务逻辑
4. 以下关于数据库连接池的描述中,正确的是?( )
答案:
可根据预先的占用超时设定,强制回收被占用连接,从而避免了常规数据库连接操作中可能出现的资源泄露;避免了频繁创建,释放连接引起的大量性能开销。在减少系统消耗的基础上,增加了系统运行环境的平稳性。;在业务不繁忙时,数据库连接池中可能存在着多个没有被使用的连接一直连接着数据库,这意味着资源的浪费;数据库连接池在初始化过程中,已经创建了若干数据库连接置于连接池中备用。业务请求可直接利用现有可用连
接,避免了数据库连接初始化和释放过程的时间开销,从而减少了系统的响应时间。
5. 以下关于对象关系映射(ORM)的描述中,正确的是?( )
答案:
开发人员只需要面向对象编程,不需要面向数据库编写代码。针对数据库的操作被转化为针对对象的操作。;ORM可以自动完成领域对象的属性与数据库表中字段的映射,大大简化了数据访问层的代码量;隐藏了数据访问的细节,屏蔽了不同数据库操作上的差异。;无可避免的,自动化映射意味着牺牲性能,对于极其复杂的查询,ORM仍然力不从心。
6. 以下关于业务逻辑层和接口控制层的描述中,正确的是?( )
答案:
业务逻辑层封装了具体业务处理流程,当处理流程发生改变时只需要维护业务逻辑层代码。;接口控制层通过定义良好的接口和协议与功能单元联系起来,这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。
7. 以下关于MVVM架构的描述中,正确的是?( )
答案:
使用MVVM架构时,View和Model可以相互独立存在,当View变化的时候Model可以不变,当Model变化的时候View也可以不变,可以同时编程;MVVM是Model-View-View Model的简写。;使用MVVM架构时,开发人员可专注于业务逻辑,而不是繁复的UI的交换、渲染细节
8. 以下关于微服务架构的描述中,正确的是?( )
答案:
微服务架构提倡每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通。;采用微服务架构时,单个服务模块修改升级不影
响其他模块。;采用微服务架构时,每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。;微服务架构提倡将单块架构的应用划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值
版权声明:本文标题:软件设计与体系结构智慧树知到课后章节答案2023年下云南大学 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1706008669a497799.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论