第九次作业3.29

1.什么是模块化,为什么要模块化?

模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说,模块是可组合、分解和更换的单元。

模块具有以下几种基本属性:接口、功能、逻辑、状态,功能、状态与接口反映模块的外部特性,逻辑反映它的内部特性。

模块化是一种处理复杂系统分解为更好的可管理模块的方式。

模块化的好处

避免命名冲突(减少命名空间污染)

灵活架构,焦点分离,方便模块间组合、分解 

多人协作互不干扰 

高复用性和可维护性

2.衡量模块独立的定性标准是什么?用自己的话表达其含义

内聚和耦合

内聚是一个模块内部各成分之间相关联程度的度量。若一个模块内各元素(语句之间、程序段之间)联系的越紧密,则它的内聚性就越高。
耦合是模块之间依赖程度的度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。

内聚和耦合是密切相关的,与其它模块存在强耦合的模块通常意味着弱内聚,而强内聚的模块通常意味着与其它模块之间存在弱耦合。模块设计追求强内聚,弱耦合。

3.如何理解信息隐藏和局部化?用自己的话或者例子表达其含义

信息隐藏和局部化是计算机科学中两个重要的概念,它们常常被用于数据处理和编程语言设计中。

信息隐藏是指将某些数据或实现细节隐藏在程序的内部,使得外部用户无法直接访问这些数据或细节。这样做可以提高程序的安全性和稳定性,同时也可以降低程序的复杂度。例如,一个类中的私有成员变量就是一个很好的信息隐藏的例子。这些私有成员变量只能通过类的公有方法访问,外部用户无法直接访问这些变量,从而保证了程序的安全性和稳定性。

class MyClass {
  private:
    int myPrivateVar;

  public:
    void setMyPrivateVar(int val) {
        myPrivateVar = val;
    }
};

在这个示例中,myPrivateVar 是一个私有成员变量,只能通过 setMyPrivateVar 方法进行访问。

局部化是指将程序中的不同部分分开处理,使得每个部分只处理它所需要的数据和功能。这样做可以提高程序的可维护性和可扩展性。例如,在一个大型的程序中,可以将不同的功能模块分开处理,每个模块只负责自己的功能,这样可以使得程序更加清晰和易于维护。此外,局部化还可以提高程序的性能,因为只有必要的数据和功能被处理,不必处理不必要的数据和功能。

void processA(int data) {
  // 处理 A 功能模块需要的数据和功能
}

void processB(int data) {
  // 处理 B 功能模块需要的数据和功能
}

int main() {
  int data = 10;
  processA(data);
  processB(data);
  return 0;
}

在这个示例中,processA 和 processB 分别处理不同的功能模块,每个模块只处理它所需要的数据和功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值