当前位置: 首页 > article >正文

软件工程第13章小测

一 单项选择题(10分)
1、当一个模块完成一组且只有一组操作并返回结果时,称该模块是()的。(1分)
 过程内聚
 逻辑内聚
 功能内聚
 通信内聚
正确答案:功能内聚
2、访问相同数据的所有操作被定义在一个类中,一般这些操作仅关注数据的查询、访问和存储。这样的类符合()。(1分)
 过程内聚
 逻辑内聚
 功能内聚
 通信内聚
正确答案:通信内聚
3、当一个构件暗中修改其他构件的内部数据,称为()。(1分)
 偶然内聚
 逻辑内聚
 内容耦合
 控制耦合
正确答案:内容耦合
4、当一个构件和某些基本构件(如操作系统、数据库、无线通信功能)进行通信和协作时,发生()。(1分)
 内容耦合
 公共耦合
 控制耦合
 印记耦合
正确答案:公共耦合
5、软件必须进行内部或外部的通信,因此()是比如存在的。(1分)
 耦合
 内聚
 分解
 抽象
正确答案:耦合
6、下面代码存在的耦合是()。
public class Product{
    public float unitPrice;
    ......
}
public class Order{
    private Product myProduct = new Product();
    public void setItem(){
        myProduct.unitPrice = -100;
    }
}(1分)
 内容耦合
 公共耦合
 控制耦合
 印记耦合
正确答案:内容耦合
7、下面代码存在的耦合是()。
global variable ==0;
....
while( variable){
    if(argument xyz > 25)
        module3();
    else
        module4();
}
......
public class A{ variable=100;}
public class B{ variable=1000;}(1分)
 内容耦合
 公共耦合
 控制耦合
 印记耦合
正确答案:公共耦合
8、下面代码存在的耦合是()。
public class ShowResult{
    int type;
    public float show(){
        Cal calResult = new Cal();
        calResult.getResult(type);
    }
    ......
}
public class Cal{
    public float getResult(int t){
        if(t=0)
        // return 平均价格;
        else if(t=1)
        // return 最高价格;
        else
        // return -1;
    }
}(1分)
 内容耦合
 公共耦合
 控制耦合
 印记耦合
正确答案:控制耦合
9、下面代码存在的耦合是()。
public class Order{
    public float getTotalCost(Customer cus){
        int customerLevel = cus.getLevel();
        int customerBonuspoint = cus.getBonuspoint();
        ......//计算总金额
    }
}(1分)
 内容耦合
 公共耦合
 控制耦合
 印记耦合
正确答案:印记耦合
10、在使用第三方支付工具“支付宝”时,需要遵循其接口规约。其中需要调用AlipayClient构造器,创建AlipayClient对象,并完成初始化。
试分析AlipayClient构造器方法,并分析从下面代码(测试代码)到AlipayClient类的访问,存在的耦合是()。
代码如下:
/**
 * @version 1.0
 * @description 测试支付宝接口
 */
@RequestMapping("/alipaytest")
    public void doPost(HttpServletRequest httpRequest,
                       HttpServletResponse httpResponse) 
                      throws ServletException, IOException, AlipayApiException {
        //获得初始化的AlipayClient
        AlipayClient alipayClient = 
new DefaultAlipayClient(AlipayConfig.URL, APP_ID, APP_PRIVATE_KEY, AlipayConfig.FORMAT, AlipayConfig.CHARSET, ALIPAY_PUBLIC_KEY,AlipayConfig.SIGNTYPE);
        //创建API对应的request
        AlipayTradeWapPayRequest alipayRequest = new AlipayTradeWapPayRequest();
        //填充业务参数
        alipayRequest.setBizContent("{" +
                "    \"out_trade_no\":\"202210100010101002\"," +
                "    \"total_amount\":0.1," +
                "    \"subject\":\"Iphone6 16G\"," +
                "    \"product_code\":\"QUICK_WAP_WAY\"" +
                "  }");
        //调用SDK生成表单
       ........
    }(1分)
 公共耦合
 控制耦合
 印记耦合
 数据耦合
正确答案:数据耦合
二 填空题(2分)
1、为了实现软件的并行开发,同时也保证其易理解和更好的灵活性,进行软件设计时,会将软件分解为“独立”的模块,称为模块化。其衡量标准是建立()的模块。(1分)
正确答案:高内聚、低耦合
2、()则要考虑对外公开什么接口,对内隐藏什么秘密。其目的也是为了做到模块独立,实现软件的可扩展和可收缩。(1分)
正确答案:信息隐藏


http://www.kler.cn/a/410291.html

相关文章:

  • 刷题——字符串中的单词数(力扣)
  • 【AI】基础原理
  • 一文详细了解websocket应用以及连接断开的解决方案
  • 内存不足引发C++程序闪退崩溃问题的分析与总结
  • SCAU软件体系结构实验四 组合模式
  • 【计算机网络】网段划分
  • 【C++】深入哈希表核心:从改造到封装,解锁 unordered_set 与 unordered_map 的终极奥义!
  • Docker 的存储驱动及其优缺点
  • 超高流量多级缓存架构设计!
  • 配置Springboot+vue项目在ubuntu20.04
  • Vue实训---1-创建Vue3项目
  • docker离线安装linux部分问题整理
  • 电话机器人的未来发展前景,未来发展趋势怎么样?
  • ThingsBoard规则链节点:Azure IoT Hub 节点详解
  • ubuntu 安装 conda
  • ajax基础
  • 使用 Java 操作 SQLite 数据库
  • Spring Boot 应用开发:构建高效、可扩展的 Java 微服务
  • 基于springboot + vue-element-plus-admin开发的MES系统源码,制造执法系统MES源码;支持app,小程序,H5,后台
  • (72)采用格雷(Gray)编码的8-PSK调制解调通信系统的MATLAB仿真
  • Solon 拉取 maven 包很慢或拉不了,怎么办?
  • javaEE初阶——多线程(1)
  • GitLab|应用部署
  • 【强化学习的数学原理】第05课-蒙特卡洛方法-笔记
  • 24 年第十四届APMCM亚太数模竞赛浅析
  • JVM-类文件结构