出发点和基本思想软件开发方法和过程尽可能接近.ppt

上传人:sccc 文档编号:5912669 上传时间:2023-09-03 格式:PPT 页数:27 大小:224.54KB
返回 下载 相关 举报
出发点和基本思想软件开发方法和过程尽可能接近.ppt_第1页
第1页 / 共27页
出发点和基本思想软件开发方法和过程尽可能接近.ppt_第2页
第2页 / 共27页
出发点和基本思想软件开发方法和过程尽可能接近.ppt_第3页
第3页 / 共27页
出发点和基本思想软件开发方法和过程尽可能接近.ppt_第4页
第4页 / 共27页
出发点和基本思想软件开发方法和过程尽可能接近.ppt_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《出发点和基本思想软件开发方法和过程尽可能接近.ppt》由会员分享,可在线阅读,更多相关《出发点和基本思想软件开发方法和过程尽可能接近.ppt(27页珍藏版)》请在三一办公上搜索。

1、出发点和基本思想软件开发方法和过程尽可能接近人类认识世界以及解决问题的方法与过程,这样就会使应用程序的体系结构与计算机解决问题的解空间结构非常接近,从而使程序开发、使用与维护更加平坦、顺畅与迅速。,(1)什么是面向对象语言 面向对象语言继承了面向过程的高级语言的结构化设计、模块化、并行处理等优点,克服了数据与代码分离的缺点。代表了新颖的程序设计思维方法,将研究的任何事物视为对象,用语言中的对象和类直接模拟现实世界的事物。,1.2.3 面向对象语言,(2)发展过程20世纪60年代提出“面向对象”的概念SmalltalkLispObject PascalC+、Visual C+、C#Java:一次

2、编写,多次使用,具有跨平台的优势,适合在网络开发中应用。Visual Basic:基于对象的可视化程序设计语言。Visual FoxProDelphiPower Builder等20世纪90年代已处于适用阶段,是对传统程序设计方法的变革。,对象(Object)是由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。每个对象就是一个微型程序,有自己的数据、操作、功能和目的。面向对象思想认为,客观世界是由对象组成的,任何事物都是对象。每个对象有自己的动态行为和静态属性。面向对象的软件系统是由相互协作而又彼此独立的对象组成。如:图1、2、3。,(3)面向对象程序设计的基本概念

3、,面向对象技术以抽象数据类型、模块封装和内部信息隐蔽为主要特征。不把程序看成是工作在数据上的一系列过程和函数的集合,而是把程序看成是相互协作而又彼此独立的对象的集合。,99-1班学生成绩表,插入,删除,显示,学号 姓名 成绩,1 王平 86,2 李红 92,R=10,(10,6),移动,显示,放大,缩小,图-1,图-2,图-3,一家公司的对象模型,参加,员工,公司,雇用 解雇,名字电话号码主要产品 地址,姓名 地址身份证号 工资,为之工作,工人,经理,项目,项目名 预算 优先级,预算,主持,部门名,部门,产品,产品名,预算,成本,价格,报价,生产,管理,1+,1+,1+,1+,0,1,1+,D

4、ataMethods,对 象,面向对象技术具有如下良好特点:(1)模块性;(2)封装功能;(3)继承性;(4)易维护性;(5)扩充性;,类(Class)现实世界中人们习惯于把具有相似特征的事物归为 一类,在面向对象的软件技术中,把具有相同数据 和相同操作的一组相似对象抽象为类。对象是类的具体实例。例如不同班级的学生成绩表可以抽象为学生成绩表 类。实例(Instance)某个特定类所描述的一个具体的对象。属性(Attribute)类中所定义的数据。方法(Method)对象所能执行的操作。消息(Message)对象彼此之间仅能通过 消息互相联系,对象内 部对数据的处理是通过 消息来激发的。,C1.

5、Insert(10,王平,98),类的特性 类具有封装性(数据抽象)、继承性和多态性,即子类不仅可以继承父类的数据和方法,而且还可 以增加新的方法或修改原有的方法。继承(Inheritance)子类能够直接获得父类已有的特性。重载(Overload)子类可对父类中已有的操作重新给出其实现 方法。函数(虚函数)重载、运算符重载。多态性(Polymorphism)同一个操作作用于不同的对象上可以 有不同的解释,产生不同的执行结果。“draw”操作作用在“矩形”对象上,画矩形。作用在“圆”对象上,则画圆。,(a):先创建一些具体类,(b):归纳出抽象类,(c):进一步具体化,(d):再次归纳,以C语

6、言与C+语言为例,理解软件编程的实质,什么是C+语言?,传统程序设计:结构化编程结构化编程是把复杂程序划分成一系列简单部件的技术。,例如:设计一个程序,对不同类型的图形求其面积,并打印结果,求图形面积,打印结果,圆的数据结构,矩形的数据结构,全局数据结构中增加新的成员,图形的类型,三角形的数据结构,增加求三角形面积,增加输出三角形面积,全局数据结构的修改导致过程的修改,过程将修改,面向对象技术变革了软件设计的传统方法解决结构化程序设计不足的方法,就是限制数据的存取权限,把数据和使用此数据的过程紧紧封装在一起,定义成基本数据类型或称为类。,通用图形类,求面积,打印,圆 类,求面积,打印,矩形类,

7、求面积,打印,三角形类,求面积,打印,正方形类,求面积,打印,求周长,通过类的继承扩展软件结构软件结构在稳定中健壮生长,传统程序设计与面向对象程序设计的比较:,基于数据的层次结构,基于过程的层次结构,传统的程序设计,图-14,Data A,子程序1Data a,子程序2Data b,主程序,子程序1,子程序2,DataA,Dataa,Datab,对象A,对象B,对象C,对象D,面向对象的程序设计,类的层次结构,图-15,数据操作,对象,#include/create a classclass sample int i;public:void initial();void display();,

8、void sample:display()cout i endl;void main()sample A;A.initial();cout“Object A,i=”;A.display();,运行结果:Object A,i=0,void sample:initial()i=0;,#include class sample protected:int i;public:void initial();void display();,void sample:initial()i=0;void sample:display()cout i endl;,class newsample:public sa

9、mple public:void add()i+;,void main()newsample A;sample B;A.initial();A.add();B.initial();A.display();,Sample(父类),公有函数void initial();void display();,保护数据i,公有函数void initial();void display();void add();,保护数据i,newsample(子类),继承父类,继承父类,void initial();void display();void add();,面象对象的编程使得为程序增添新的功能变的简单。用户不必

10、修改已有的代码,仅增加新模块所必须的代码即可支持一个新的对象。新模块既可以放在原来的程序文件中,也可以独立存储。自由改变对象的内部而不影响程序的其他部分,增加了程序的模块化。,(四)面向对象程序设计一、掌握类的基本特性(面向对象程序设计的优点)二、了解面向对象程序设计的基本概念,作业:阅读第一章、第四章相关内容。,问 题1.计算机技术日新月异,作为非计算机专业的学生,我们应该如何学,学什么?2.如何处理好学习计算机与本专业学习的关系?3.如何提高利用计算机网络获取知识、解决问题、开发软件的综合能力。4.如何培养再学习的能力和跨学科的综合能力。,面向21世纪的计算机系统,必将向着高性能、网络化和智能化方向发展,这对计算机软件提出了更高的要求,也为计算机软件的发展提供了更为广阔的施展舞台,必将导致计算机软件的更大进步。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号