程序设计方法学讲课.pptx





《程序设计方法学讲课.pptx》由会员分享,可在线阅读,更多相关《程序设计方法学讲课.pptx(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、程序设计方法学讲课现在学习的是第1页,共26页一、面向对象与面向过程程序设计OOP以待解问题中涉及的对象为主要矛盾对象(Object)和类(Class)对象,是现实世界中的物理实体在计算机逻辑中的映射和体现。类,是同种对象的集合与抽象。(模板)消息(Message)传递一个面向对象的程序由许多对象组成,这些对象之间对象之间通过收发信息相互沟通。对于对象来说,消息就是请求执行某个过程。基本概念现在学习的是第2页,共26页基本概念对象类实体抽象数据类概念世界现实世界计算机世界抽象实例化抽象计算机逻辑实现映射一、面向对象与面向过程程序设计现在学习的是第3页,共26页基本概念对象的组成标识用以区别不同
2、对象的唯一标志用“对象名”表达状态又称静态属性,指对象内部包含的信息用“数据成员(域)”表达行为对象的动态属性,指对象可进行的操作使用“函数成员(方法)”表达一、面向对象与面向过程程序设计现在学习的是第4页,共26页对象和类对象可以是现实生活中的一个物理对象,还可以是某一类概念实体的实例。例如:一辆汽车、一个人、一本书,乃至一种语言、一个图形、一种管理方式,都可以作为一个对象。类是一组具有相同数据结构和相同操作的对象的集合。类是对一系列具有相同性质的对象的抽象,是对对象共同特征的描述。比如每一辆汽车是一个对象的话,所有的汽车可以作为一个模板,我们就定义汽车这个类。可以使用类的定义实例化对象,这
3、表示创建该类的一个实例。从类定义中产生对象,必须有建立实例的操作。一、面向对象与面向过程程序设计现在学习的是第5页,共26页面向对象程序设计技术汲取了结构化程序设计中好的思想,并将这些思想与一些新的、强大的理念相结合,从而给你的程序设计工作提供了一种全新的方法。通常,在面向对象的程序设计风格中,你会将一个问题分解为一些相互关联的子集,每个子集内部都包含了相关的数据和函数。同时,你会以某种方式将这些子集分为不同等级,而一个对象就是已定义的某个类型的变量。当你定义了一个对象,你就隐含的创建了一个新的数据类型。一、面向对象与面向过程程序设计现在学习的是第6页,共26页对象A数据方法对象B数据方法对象
4、C数据方法对象D数据方法消息消息消息消息面向对象程序设计中的数据和函数的组织结构:一、面向对象与面向过程程序设计现在学习的是第7页,共26页面向对象程序设计的特点抽象性抽象(abstraction):去掉研究问题中次要的部分,仅仅抽取主要的、本质的部分进行研究的方法。过程抽象:面向过程方法使用数据抽象:面向对象方法使用抽象数据类型(ADT)一、面向对象与面向过程程序设计现在学习的是第8页,共26页面向对象程序设计的特点封装性封装(encapsulation):利用ADT将数据和基于数据的操作密封在一起,系统的其它对象只能通过界面与其交互。封装机制将数据和代码捆绑到一起,避免了外界的干扰和不确定
5、性。封装的优点提高了系统灵活性提高了系统安全性实例:银行账户一、面向对象与面向过程程序设计现在学习的是第9页,共26页面向对象程序设计的特点继承性(具体化)继承(Inheritance)是可以让某个类型的对象获得另一个类型的对象的属性的方法。允许程序设计人员在设计新类时,只考虑与已有的父类所不同的部分,从而继承父类的内容为自己的组成部分可在子类中重写方法的实现,改变父类中不适合子类的行为提高了代码复用率,能使开发者的大部分精力用于系统特殊的设计,便于软件的演进和增量式扩充。C#只支持单继承,但支持多重接口的继承实现继承支持按级分类的概念。继承很好的支持代码的重用性(reusability)。一
6、、面向对象与面向过程程序设计现在学习的是第10页,共26页面向对象程序设计的特点多态性多态(Polymorphism):多态的意思是事物具有不同形式的能力。例如,对不同的实例,某个操作可能会有不同的行为。这个行为依赖于所要操作数据的类型。多态机制使具有不同内部结构的对象可以共享相同的外部接口。多态的实现重载(overload)覆盖(override)实例:cd/dvd播放一、面向对象与面向过程程序设计现在学习的是第11页,共26页OPO总结任何事物都是一个对象任何事物都是一个对象通过相互联系的对象请求其他对象执行一定的行为来完成计算。通过相互联系的对象请求其他对象执行一定的行为来完成计算。对象
7、之间通过发送和接收消息来进行通信。对象之间通过发送和接收消息来进行通信。每个对象都有自己的存储空间,用来存储其它对象每个对象都有自己的存储空间,用来存储其它对象每个对象都是一个类的实例。类用来代表一组相似的对象及其相每个对象都是一个类的实例。类用来代表一组相似的对象及其相关的行为,即同一个类的多个对象能执行相同行为关的行为,即同一个类的多个对象能执行相同行为类可以组织成一个单根树状组织,成为继承层次,每个类事类可以组织成一个单根树状组织,成为继承层次,每个类事例的存储空间和行为自动被其派生类使用例的存储空间和行为自动被其派生类使用一、面向对象与面向过程程序设计现在学习的是第12页,共26页面向
8、过程的结构化程序设计方法就是采用面向过程的方法来设计结构化程序,结构化程序通常包含一个主过程和若干个子过程,其中每个子过程都描述了某一个小问题的解决方法再由主过程自顶向下调用各子过程,来逐步解决整个问题。面向过程开发方式是对计算机底层结构的一层抽象,它明显把程序的内容分为数据和操纵数据的操作两部分。一、面向对象与面向过程程序设计现在学习的是第13页,共26页主程序函数1函数2函数3函数4函数5函数6函数7函数7自顶向下的设计方法:一、面向对象与面向过程程序设计现在学习的是第14页,共26页全局数据全局数据函数1局部数据函数2局部数据函数3局部数据面向过程程序中函数和数据的关系:程序程序=数据结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 方法 讲课

限制150内