抽象数据类型.ppt

抽象数据类型.ppt

ID:52181521

大小:1.71 MB

页数:57页

时间:2020-04-02

抽象数据类型.ppt_第1页
抽象数据类型.ppt_第2页
抽象数据类型.ppt_第3页
抽象数据类型.ppt_第4页
抽象数据类型.ppt_第5页
资源描述:

《抽象数据类型.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、抽象数据类型AbstractDataTypes2021/8/24InstituteofComputerSoftwareNanjingUniversity1摘要从面向过程到面向对象如何规约对象?——抽象!AbstractdatatypeADT与软件开发2021/8/24InstituteofComputerSoftwareNanjingUniversity2回顾:结构化软件开发何谓“结构化(structured)”开发方法?TheBigName“E.W.Dijkstra”开发过程侧面自顶向下,逐步求精程序设

2、计侧面小结构:顺序,选择,循环大结构:过程抽象,避免全局变量2021/8/24InstituteofComputerSoftwareNanjingUniversity3回顾:结构化软件开发“结构化(structured)”的合理性管理复杂性的有效手段分解,抽象,层次Correctness规约与实现Extendibility?Reusability?2021/8/24InstituteofComputerSoftwareNanjingUniversity4从面向过程到面向对象“结构化”的基本思想已经深入人心

3、但对于复杂、易变、交互性软件系统,以“功能”为中心的分解方式有局限完全自顶向下的功能分解?线性过程式的程序组织?应变?2021/8/24InstituteofComputerSoftwareNanjingUniversity5Thefirststep程序运行:在某个数据体上施以某些操作。两个要素操作(功能)Functions[or:Operations,Actions]客体(对象)Objects[or:Data]2021/8/24InstituteofComputerSoftwareNanjingUniv

4、ersity6ActionObjectProcessor如何导出软件系统的结构?两条途径:从操作/功能入手从客体/对象入手形成两种抽象方法:基于过程的抽象基于数据的抽象2021/8/24InstituteofComputerSoftwareNanjingUniversity7过程抽象vs.数据抽象过程抽象:指任何一个明确定义功能的操作都可以被使用者看作单个的实体,尽管这个操作实际上可能由一系列更低级的操作完成数据抽象:定义了数据类型和施加于该类型对象上的操作,并限定了对象的值只能通过使用这些操作修改和观察

5、。包含了2个概念:模块封装信息隐蔽2021/8/24InstituteofComputerSoftwareNanjingUniversity8数据抽象的意义数据抽象提供了面向对象计算的起点:系统应该被分解为概念上的实体,实体的内部细节应该被隐藏!2021/8/24InstituteofComputerSoftwareNanjingUniversity9数据抽象发展第一阶段:从无类型的二进制到基本数据类型Fortran,Algol:整型、实数、布尔数第二阶段:从基本类型到用户自定义类型Algol68,Pas

6、cal第三阶段:从用户自定义类型到抽象数据类型(AbstractDataTypes)--面向对象模块化程序设计和模块2021/8/24InstituteofComputerSoftwareNanjingUniversity10面向对象的分解好在何处?Reusability:数据(结构)及其上之操作的整体复用,而非仅仅复用操作功能;Extendibility,Continuity:对象更直接对应问题空间的概念,因而较“功能”更稳定.2021/8/24InstituteofComputerSoftwareNa

7、njingUniversity112021/8/24InstituteofComputerSoftwareNanjingUniversity现实世界问题世界软件世界Reality抽象例:考虑一个工资系统一开始,客户说他的需求很“简单明确”:2021/8/24InstituteofComputerSoftwareNanjingUniversity13EmployeeinformationHoursworkedProducePaychecksPaychecks例:考虑一个工资系统这种功能明确的系统确实适合结构

8、化的开发方法:自顶向下,逐步求精。你完美地完成了任务。而后,极有可能,客户会跑过来跟你说:给我加个统计报表撒下个月我想一些人发记时工资,一些人发计件工资啊行啊,有人每月一发,有人每周一发哦加个个人所得税系统接口再加个图像用户界面,用来交互查询吧……2021/8/24InstituteofComputerSoftwareNanjingUniversity14“面向对象的软件构造”含义(1)面向对象的软件构造(OOSC)乃是基于系

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。