第一章:面向对象开发方法概述
2012-05-21 08:37
211 查看
软件开发经历的生命周期:软件分析、软件设计、软件编码、软件测试、软件部署、软件维护。
优良的软件系统应具备的特点:可重用性、可扩展性、可维护性。
如何才能使软件系统具备以上特点:分解软件系统。使软件系统分解成多个小系统,每一个系统相对独立。分解出来的子系统应该具备以下特点:结构稳定、可扩展性、内聚性、
可组合性、松耦合性。
软件开发的主流开发方法:结构化开发和面向对象开发。结构化开发:主要按功能来划分软件的结构,是属于自顶向下的设计,在设计阶段都需要考虑实现系统的功能,所以说分解的过程其实也是功能实现的过程。结构化开发,程序的主体是方法,方法是最小的功能模块。面向对象开发:是把软件系统看成各种对象的集合,对象就是最小的子系统,一组相关的子系统组成更复杂的子系统。建立对象模型的过程是自底向上的抽象过程和自顶向下的分解过程。UML是普遍适用的可视化建模语言。
面向对象的核心思想:抽象、封装、接口、多态和继承。
对象的特性:万物皆对象、每个对象都是唯一的(保证每个对象唯一性的手段是在内存中分配唯一的地址)、对象具有属性和行为、对象具有状态、对象都属于某一个类,每个对象都是某个类的实例。
java中接口有两种意思:一种是概念性的接口,是指系统对外提供的所有服务,在对象中表现为public类型方法的声明。另一种是指interface关键字定义的实实在在的接口,用于描述系统对外提供的所有服务。
面向对象主要通过访问机制来进行封装,这种机制控制对象的属性和方法的可访问性。有四种访问控制级别:public,对外公开,访问级别最高。protected,只对同一个包的类或者子类公开。默认,只对同一个包中的类公开。private,不对外公开,只对在对象内部访问,访问级别最低。
继承和扩展提高了系统的可重用性和可扩展性。
多态是指当系统A调用系统B的服务时,系统B可以通过多种实现方式来提供服务,而这一切对A是透明的。
动态绑定:是指在运行时环境中,虚拟机会根据对象实际的类型调用其的方法。比如狗和老虎的父类都是动物,而都继承了叫的方法。在运行时,都声明动物类型的狗和老虎,调用叫方法时,是动态的。也就是狗调用时是狗叫,老虎调用时是老虎叫,而不是抽象的动物叫。
UML:采用标准的图形来直观的显示对象模型。包含以下几种框图:用例图,列框图,时序图和协作图,状态转换图,组件图,部署图。其中用例图,类框图,组件图,部署图构成了系统的静态模型。状态转换图,时序图和协作图构成了系统的动态模型。
用列图:描述了系统提供的功能,用可视化的方式来理解系统的功能需求。类框图:主要包括类和类的关系(关联,聚集,依赖,泛化,实现)。时序图:用来显示用例的详细流程,包括了水平维度和垂直维度。水平维度用来显示发送消息的过程,垂直维度用来显示发送消息的时间循序。协作图:是和时序图包含相同的信息,可以由Rational Rose工具自动生成。区别在于协作图不参照时间,直接西那是对象和角色之间的交互过程。状态转换图:表示对象在它的生命周期中所处的不同状态,以及状态之间的转换过程。组件图:显示系统软件之间的依赖关系,以及和其他第三方组件的依赖关系,还能包括源代码的文件的物理组件结构。部署图:表示软件如何部署到硬件环境中。
UML类之间关系:关联,类A和类B实例之间存在特定的对应关系。依赖,类A访问类B提供的服务。聚集,类A为整体类,类B为局部类,类A的对象由类B的对象组合而成。泛化,类A继承类B。实现,类A实现了B的接口。
优良的软件系统应具备的特点:可重用性、可扩展性、可维护性。
如何才能使软件系统具备以上特点:分解软件系统。使软件系统分解成多个小系统,每一个系统相对独立。分解出来的子系统应该具备以下特点:结构稳定、可扩展性、内聚性、
可组合性、松耦合性。
软件开发的主流开发方法:结构化开发和面向对象开发。结构化开发:主要按功能来划分软件的结构,是属于自顶向下的设计,在设计阶段都需要考虑实现系统的功能,所以说分解的过程其实也是功能实现的过程。结构化开发,程序的主体是方法,方法是最小的功能模块。面向对象开发:是把软件系统看成各种对象的集合,对象就是最小的子系统,一组相关的子系统组成更复杂的子系统。建立对象模型的过程是自底向上的抽象过程和自顶向下的分解过程。UML是普遍适用的可视化建模语言。
面向对象的核心思想:抽象、封装、接口、多态和继承。
对象的特性:万物皆对象、每个对象都是唯一的(保证每个对象唯一性的手段是在内存中分配唯一的地址)、对象具有属性和行为、对象具有状态、对象都属于某一个类,每个对象都是某个类的实例。
java中接口有两种意思:一种是概念性的接口,是指系统对外提供的所有服务,在对象中表现为public类型方法的声明。另一种是指interface关键字定义的实实在在的接口,用于描述系统对外提供的所有服务。
面向对象主要通过访问机制来进行封装,这种机制控制对象的属性和方法的可访问性。有四种访问控制级别:public,对外公开,访问级别最高。protected,只对同一个包的类或者子类公开。默认,只对同一个包中的类公开。private,不对外公开,只对在对象内部访问,访问级别最低。
继承和扩展提高了系统的可重用性和可扩展性。
多态是指当系统A调用系统B的服务时,系统B可以通过多种实现方式来提供服务,而这一切对A是透明的。
动态绑定:是指在运行时环境中,虚拟机会根据对象实际的类型调用其的方法。比如狗和老虎的父类都是动物,而都继承了叫的方法。在运行时,都声明动物类型的狗和老虎,调用叫方法时,是动态的。也就是狗调用时是狗叫,老虎调用时是老虎叫,而不是抽象的动物叫。
UML:采用标准的图形来直观的显示对象模型。包含以下几种框图:用例图,列框图,时序图和协作图,状态转换图,组件图,部署图。其中用例图,类框图,组件图,部署图构成了系统的静态模型。状态转换图,时序图和协作图构成了系统的动态模型。
用列图:描述了系统提供的功能,用可视化的方式来理解系统的功能需求。类框图:主要包括类和类的关系(关联,聚集,依赖,泛化,实现)。时序图:用来显示用例的详细流程,包括了水平维度和垂直维度。水平维度用来显示发送消息的过程,垂直维度用来显示发送消息的时间循序。协作图:是和时序图包含相同的信息,可以由Rational Rose工具自动生成。区别在于协作图不参照时间,直接西那是对象和角色之间的交互过程。状态转换图:表示对象在它的生命周期中所处的不同状态,以及状态之间的转换过程。组件图:显示系统软件之间的依赖关系,以及和其他第三方组件的依赖关系,还能包括源代码的文件的物理组件结构。部署图:表示软件如何部署到硬件环境中。
UML类之间关系:关联,类A和类B实例之间存在特定的对应关系。依赖,类A访问类B提供的服务。聚集,类A为整体类,类B为局部类,类A的对象由类B的对象组合而成。泛化,类A继承类B。实现,类A实现了B的接口。
相关文章推荐
- Java面向对象 第一章 面向对象开发方法概述
- Java面向对象编程 第一章 面向对象开发方法概述
- 面向对象开发方法概述
- 面向对象开发方法概述
- 面向对象开发方法概述
- 01章 面向对象开发方法概述
- 面向对象软件开发方法概述
- 面向对象开发方法概述
- Java面向对象开发方法概述
- java学习笔记《java面向对象编程》——面向对象开发方法概述
- iOS开发核心语言Objective C —— 面向对象思维、setter和getter方法及点语法
- 学习面向对象开发的方法
- 06-03 Java 面向对象思想概述、开发设计特征,类和对象的定义使用,对象内存图
- 面向对象及组件开发(五)普通方法与原型方法
- 《软件工程-原理,方法,与应用》-面向对象开发笔记
- js面向对象开发(四) 其他引用类型(encodeURI 、encodeURIComponent编码,eval方法 ,escape unescape 给汉字转码 )
- 几种典型的面向对象开发方法
- 面向对象开发方法
- 面向对象开发方法之统一建模语言(UML)
- python面向对象开发3 (内部类-构造-析构)魔术方法)