摘要:
学习ADT有一周了,从了解到使用,慢慢找到了一点感觉,通过一系列的基础数据类型如堆栈,队伍,扫描器等常见结构模型练习体会它的威力。这些大多都参考自《程序设计抽象思想-C语言描述》,但不是照搬过来了,为了真正提高自己的基本技能,尽力自己独立完成,遇到再去参考大师的思路,这样一方面提高自己的动手能力,另一方面明确了自己的问题,有针对性地学习别人的长处。
ADT在模块化开发中发挥了极其重要的作用,它可使一个复杂程序变得有层次,更模块化,易于开发和重用。首先它将一般程序划分为接口,实现和客户端三层,每层都有自己的职责,应用到实现中可能是三组不同的人员,在一定程序上,使这三层关系分明,如接口是通过一个头文件,定义一个抽象数据类型,及其行为,实现层依照接口定义,实现底层表示和行为的实现代码,而且底层表示和实现是有一定自由的,可根据实际,选择高效的实现方式;而客户端作为接口的使用者,对接口的实现层并不了解,也不需要了解。只需根据接口定义及其说明,来调用相应的行为函数,来完成复杂的任务。 阅读全文