前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软件工程中内聚的分类

软件工程中内聚的分类

作者头像
Jerry Wang
发布2023-05-23 14:17:56
2730
发布2023-05-23 14:17:56
举报

在软件工程中,内聚是用来衡量模块内部功能联系紧密程度的概念。有不同的内聚类型,其中包括偶然内聚、逻辑内聚、过程内聚和通信内聚。下面是对每种内聚类型的简单说明和举例:

  1. 偶然内聚(Coincidental Cohesion):偶然内聚指的是模块内的元素之间没有明确的功能联系,它们仅仅是因为某种偶然的原因而被组合在一起。这种内聚类型是最低级别的内聚,通常会导致代码难以维护和理解。

举例:一个模块中包含了各种无关的函数,这些函数之间没有共享的数据或交互行为,它们只是被放在同一个模块中。

  1. 逻辑内聚(Logical Cohesion):逻辑内聚指的是模块内的元素按照某种逻辑关系相关联,共同实现一个或多个功能。这种内聚类型是较高级别的内聚,模块内的元素在逻辑上相互关联,共同解决某个问题。

举例:一个处理订单的模块,包含了创建订单、查询订单、修改订单等函数,它们在逻辑上都与订单处理相关。

  1. 过程内聚(Procedural Cohesion):过程内聚指的是模块内的元素按照某种执行顺序相关联,共同完成一项任务或处理一种情况。这种内聚类型要求模块内的元素按照特定的过程顺序执行。

举例:一个排序模块,包含了选择排序、冒泡排序、插入排序等函数,它们按照不同的排序算法的过程顺序执行。

  1. 通信内聚(Communicational Cohesion):通信内聚指的是模块内的元素通过共享数据进行交流和协作,彼此依赖于共享的数据或信息。这种内聚类型要求模块内的元素在完成任务时通过通信实现协作。

举例:一个用户管理模块,包含了添加用户、删除用户、更新用户信息等函数,它们通过共享的用户数据进行交流和协作。

需要注意的是,内聚类型并不是绝对的,一个模块可能同时具有多种内聚类型的特点,但通常会有一种主导。理想情况下,我们希望模块具有高内聚和低耦合,即模块内元素之间的功能联系紧密,同时与其他模块之间的依赖关系较弱。这有助

于提高代码的可维护性、重用性和扩展性。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-05-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档