zoukankan      html  css  js  c++  java
  • 06抽象数据类型

    1. 抽象数据类型

    ​ 抽象数据类型(ADT,abstract data type)是指一些数据以及对这些数据所进行的操作的集合。这些操作即向程序的其余部分描述了这些数据是怎么样的,也允许程序的其余部分改变这些数据。

    ​ “抽象数据类型”概念中“数据”一词的的用法有些随意。一个ADT可能是一个图形窗体以及所有能影响该窗体的操作;也可以是一个文件以及对这个文件进行的操作;或者是一张保险费率表以及相关操作。

    ​ 要想理解面向对象编程,首先要理解ADT,不懂ADT的程序员开发出来的类知识名义上的“类”而已——实际上这种“类”只不过就是把一些稍微有点关系的数据和子程序堆在一起。然而在理解ADT之后,程序员就能写出在一开始很容易实现、日后也容易修改的类来。

    ​ 抽象数据类型可以让你像在现实世界中一样操作实体,而不必再底层的实现上摆弄实体,这多么令人兴奋啊。你不用再向链表中插入一个节点了,而是可以在电子表格中添加一个数据单元格,或向一组窗体类型中添加一个新类型,或给火车模型加挂一节车厢。深入挖掘能在问题领域工作(而非在底层实现lingua工作)的能量吧!

    2. 使用ADT的益处
    • 可以隐藏实现细节

    • 改动不会影响到整个程序

    • 让接口能提供更多信息

    • 更容易提高性能

    • 让程序的正确性更显而易见

    • 程序更具自我说明性

    • 无须在程序内到处传递数据

    • 你可以像在现实世界中那样操作实体,而不用在底层实现上操作它

    3. 创建ADT的方法
    • 把常见的底层数据类型创建为 ADT 并使用这些 ADT,而不再使用底层数据
    • 把像文件这样的常用对象当成ADT
    • 简单的事物也可当做ADT
    • 不要让ADT依赖于其存储介质
    道虽迩,不行不至;事虽小,不为不成。
  • 相关阅读:
    C艹函数与结构体
    c++ const 用法总结
    c++ 重载
    c++ 的makefile文件实例
    python3 异步模块asyncio
    C++ 面向对象 类成员函数this指针
    基于注释的Spring Security实战
    web 安全 初探 (正在更新)
    Spring dbcp连接池简单配置 示例
    Spring JDBC
  • 原文地址:https://www.cnblogs.com/rock-cc/p/9839362.html
Copyright © 2011-2022 走看看