数据设计与实现:C++ 中的多视角数据处理
1. 数据的多视角理解
在编程领域,数据是程序操作的核心对象。我们可以从不同视角来理解数据,这有助于我们更高效地设计和实现程序。
1.1 数据抽象与封装
数据抽象是将数据类型的逻辑属性与其实现分离的过程。以整数为例,不同计算机对整数的物理表示方式各异,如二进制编码十进制、符号 - 数值二进制等。但作为 C++ 程序员,我们只需知道如何声明整型变量以及允许对整数进行的操作,如赋值、加减乘除和取模运算。
C++ 对整型数据进行了封装,就像药盒封装药物一样,用户无需了解内部实现细节,只需通过特定操作来创建和操作数据。例如,通过声明语句创建整型变量,使用赋值运算符或输入流为变量赋值,并进行算术运算。这种封装的好处是,我们可以从逻辑层面思考数据和操作,而不必担心实现细节。
抽象数据类型(ADT)是一种数据类型,其属性(域和操作)的定义独立于任何特定实现。数据结构则是实现 ADT 的具体方式,它是数据元素的集合以及用于存储和检索单个元素的操作。ADT 是高层描述,而数据结构是具体实现,ADT 独立于实现,数据结构依赖于实现。
1.2 数据的三个视角
在建模数据时,我们可以从三个不同视角考虑数据:
- 应用(或用户)级别 :在特定上下文中对现实生活数据进行建模的方式,也称为问题域。例如,在图书馆的例子中,应用级别关注的是像国会图书馆、珍稀书籍收藏馆等具体实体。
- 逻辑(或抽象)级别 :对数据值(域)和操作集合的抽象视图。以图书馆为例,逻辑级别关注的是“是什么”的问题,
超级会员免费看
订阅专栏 解锁全文
7万+

被折叠的 条评论
为什么被折叠?



