⑴ 什么是面向对象的软件工程
面向对象的软件工程就是oop
就是所见所得的那种,你画什么控件,得出的程序就是什么样的
不是Basic是DOS样子的,那就不叫OOP了
⑵ 软件工程中三种面向对象模型的主要功能
1、功能模型(即用例模型à作为输入)
2、对象模型:对用例模型进行分析,把系统分解成互相协作的分析类,通过类图/对象图描述对象/对象的属性/对象间的关系,是系统的静态模型
3、动态模型:描述系统的动态行为,通过时序图/协作图描述对象的交互,以揭示对象间如何协作来完成每个具体的用例,单个对象的状态变化/动态行为可以通过状态图来表达
⑶ 软件工程 什么叫面向对象软件开发方法 复习题
下面是一些有效的复习方法,这样的方法可以帮助你成功应对考试。 1、学会鉴别学习的重点。普遍的原理、公式和定理,实验结论,词汇与规则,历史顺序与历史事件的因果,文学体裁、理论与事实等,都是需要复习的课程重点。一定要区别开观点与事实。要特别注意重点强调的内容:如黑体字、问题、带重点标记的词或者在结论段落中重复的内容。 2、在考试的前两周必须认真听讲,不能漏掉老师在课堂上提到的任何问题。即便老师继续讲新内容,也会有迹象表明某些复习重点。要注意听老师说的这灯话:“我们在十月份讲过一个例子,与这个例子没什么不同,要记住院为什么那个例子非常重要”,“这是本学期学过的第8个基本原理,这些原理对于理解本门课程都很重要。”绝大多数老师都会以各种步同的方式提示所有的考试内容,要注意发现这些问题。
⑷ 面向对象的软件工程包括哪些主要内容
1.面向对象分析 2.面向对象设计 3.面向对象编程
⑸ 什么是面向对象软件工程理论的核心体系
面向对象
面向对象(Object Oriented,OO)是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
谈到面向对象,这方面的文章非常多。但是,明确地给出对象的定义或说明对象的定义的非常少——至少我现在还没有发现。其初,“面向对象”是专指在程序设计中采用封装、继承、抽象等设计方法。可是,这个定义显然不能再适合现在情况。面向对象的思想已经涉及到软件开发的各个方面。如,面向对象的分析(OOA,Object Oriented Analysis),面向对象的设计(OOD,Object Oriented Design)、以及我们经常说的面向对象的编程实现(OOP,Object Oriented Programming)。许多有关面向对象的文章都只是讲述在面向对象的开发中所需要注意的问题或所采用的比较好的设计方法。看这些文章只有真正懂得什么是对象,什么是面向对象,才能最大程度地对自己有所裨益。这一点,恐怕对初学者甚至是从事相关工作多年的人员也会对它们的概念模糊不清。
面向对象是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
一、传统开发方法存在问题
1.软件重用性差
重用性是指同一事物不经修改或稍加修改就可多次重复使用的性质。软件重用性是软件工程追求的目标之一。
2.软件可维护性差
软件工程强调软件的可维护性,强调文档资料的重要性,规定最终的软件产品应该由完整、一致的配置成分组成。在软件开发过程中,始终强调软件的可读性、可修改性和可测试性是软件的重要的质量指标。实践证明,用传统方法开发出来的软件,维护时其费用和成本仍然很高,其原因是可修改性差,维护困难,导致可维护性差。
3.开发出的软件不能满足用户需要
用传统的结构化方法开发大型软件系统涉及各种不同领域的知识,在开发需求模糊或需求动态变化的系统时,所开发出的软件系统往往不能真正满足用户的需要。
用结构化方法开发的软件,其稳定性、可修改性和可重用性都比较差,这是因为结构化方法的本质是功能分解,从代表目标系统整体功能的单个处理着手,自顶向下不断把复杂的处理分解为子处理,这样一层一层的分解下去,直到仅剩下若干个容易实现的子处理功能为止,然后用相应的工具来描述各个最低层的处理。因此,结构化方法是围绕实现处理功能的“过程”来构造系统的。然而,用户需求的变化大部分是针对功能的,因此,这种变化对于基于过程的设计来说是灾难性的。用这种方法设计出来的系统结构常常是不稳定的 ,用户需求的变化往往造成系统结构的较大变化,从而需要花费很大代价才能实现这种变化。
二、面向对象的基本概念
(1)对象。
对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
(2)对象的状态和行为。
对象具有状态,一个对象用数据值来描述它的状态。
对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中
(3)类。
具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。
类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。
(4)类的结构。
在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。
①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。
②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。
(5)消息和方法。
对象之间进行通信的结构叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。
类中操作的实现过程叫做方法,一个方法有方法名、参数、方法体。消息传递如图10-1所示。
二、面向对象的特征
(1)对象唯一性。
每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。
(2)分类性。
分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。
(3)继承性。
继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。
在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承。
在类层次中,子类继承了多个父类的数据结构和方法,则称为多重继承。
在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。
采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。
(4)多态性(多形性)
多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。
多态性允许每个对象以适合自身的方式去响应共同的消息。
多态性增强了软件的灵活性和重用性。
⑹ 简述传统软件工程和面向对象软件工程的异同点
1,传统软件工程与面向对象分析的区别
http://wenku..com/link?url=Ll7q0m_-I7qxDzjF9OiTwB2QtcD_x0-EKxaTC0yCUII0GKPiqiIpsuR9C7FO
2,传统的软件工程方法与面向对象的软件工程方法比较
http://xueshu..com/s?wd=paperuri:()&filter=sc_long_sign&sc_ks_para=q%3D传统的软件工程方法与面向对象的软件工程方法比较&tn=SE_xueshu_c1gjeupa&ie=utf-8
⑺ 软件工程为什么要用面向对象 csdn
人类自古至今所有的活动都是基于:
统一描述和目标导向
这种思维模式的,
所谓面向对象的编程语言就是它能提供为这种分析和解决问题的方法论提供一些技术层面的支持;
在编程概念上,面向对象更接近规划,面向过程更接近实现,你不能割断或对立这两种说法,举例说明:如果你是程序员,我派出一份工单给你,要求你实现一个接口,
我才不会在乎你的代码是否更具有所谓的OO风格,只要你更在规定工时内通过测试就可以了
⑻ 软件工程与面向对象技术是做什么的
面向对象技术实际上是一种编程方法,是将数据抽象为一个对象。例如在编程中要是描述一个人的信息,一个人的年龄、身高、姓名、出生日期都是一个人的属性,而我们将这些属性集合在一起,作为一个“人”的对象处理。主要是区别于传统面向函数、面向流程编程的一种改进,可以提高编码效率,代码重用率等等。
软件工程是一种工程技术,就是说一个软件项目可能很大,需要很多程序员、设计员、甚至各种其他专业不同的人员来一起完成。怎么样分配给这些人任务,怎么管理任务,怎么让一个软件项目,也就是软件的工程完成的又快又好,重要的是能在预期时间内完成,这就是软件工程的研究课题。具体有很多模型,很多方法,先开发哪,怎么开发,怎么测试我们开发的,什么时候要和客户交流我们正在开发的这个项目等等细节。
⑼ 面向对象软件工程方法的特点是什么
不要采纳我的。我想看他们怎么说。面向对象方法的特点是代码少。一个方法用很多次却只写了一次。做到极致是没有一行重复代码,全靠现有的方法的组合成各种功能!