吉林大学UML学习思维笔记第四章面向对象的概念

吉林大学UML学习思维笔记

第四章面向对象的概念

  1. Objectives
    描述抽象、封装、模块化和层次结构。
    描述一个班级的物理结构。
    描述类和对象之间的关系。
    定义多态性和泛化。
  2. What Is an Object?
    非正式地,对象表示实体,无论是物理的、概念的还是软件的。
  3. A More Formal Definition
    对象是具有定义良好的边界和标识的实体,封装状态和行为。
    状态由属性和关系表示。
    行为由操作、方法和状态机表示。
  4. An Object Has State
    状态是对象生命周期中的一种条件或情况,它满足某些条件、执行某些活动或等待某些事件。
    对象的状态通常会随时间变化。
  5. An Object Has Behavior
    行为决定对象的行为和反应。
    对象的可见行为由它可以响应的一组消息(对象可以执行的操作)建模。
  6. An Object Has Identity
    每个对象都有唯一的标识,即使状态与另一个对象的状态相同。
  7. Basic Principles of Object Orientation
    What Is Abstraction?
    一个实体区别于所有其他类型实体的本质特征。
    定义相对于查看器透视的边界。
    不是一种具体的表现形式,表示某种事物的理想本质。
    What Is Encapsulation?
    从客户端隐藏实现。
    客户端依赖于接口。
    What Is Modularity?
    将复杂的东西分解成可管理的部分。
    帮助人们理解复杂的系统。

将复杂的东西分解成可管理的部分。
帮助人们理解复杂的系统。

  1. Representing Objects in the UML
    对象表示为带下划线名称的矩形。
  2. What is a class?
    多态性和泛化
    组织模型元素

类是一组共享相同属性、操作、关系和语义的对象的描述。
对象是类的实例。
类是一种抽象,因为它强调相关特性。
抑制其他特征。

  1. Representing Classes in the UML
    一个类用一个带有三个隔间的矩形表示:
    他的类名
    结构(属性)
    行为(操作)
  2. The Relationship between Classes and Objects
    类是对象的抽象定义。
    它定义了类中每个对象的结构和行为。
    它用作创建对象的模板。
    类不是对象的集合。
  3. What Is an Attribute?
    属性是一个类的命名属性,它描述了属性实例可以保存的值范围。
    一个类可以有任意数量的属性,或者根本没有属性。
  4. What Is an Operation?
    可以从对象请求以实现行为的服务。操作具有签名,这可能会限制可能的实际参数。
    一个类可以有任意数量的操作,或者根本没有。
  5. What Is Polymorphism?
    能够在单个接口后面隐藏许多不同的实现。
  6. What Is Generalization?
    类之间的关系,其中一个类共享一个或多个类的结构和/或行为。
    定义抽象层次结构,其中子类继承自一个或多个超类。
    单一继承。
    多重继承。
    是一种“is a kind of”关系。
  7. Single Inheritance
  8. Multiple Inheritance
    

多重继承意味着一个类可以继承其他几个类。例如,Bird继承了FlyingThing和Animal。
多重继承在概念上是直截了当的,可能需要对真实世界进行精确建模。然而,当您使用多重继承时,存在潜在的实现问题,因为并非所有实现语言都支持它。因此,明智地使用多重继承。仅在准确描述概念并降低模型复杂性的地方使用它。然而,请注意,这种表示可能需要在设计和实现中进行调整。
通常,一个类只继承一个类。

  1. What Is a Package?
    将元素组织成组的通用机制。
    可以包含其他模型元素的模型元素。
    可以使用一个软件包:
    组织开发中的模型。
    作为配置管理的一个单元。
  2. A Package Can Contain Classes
    这个名为“大学文物”的包包含一个包和五个类。
  3. Diagram Depiction
    每个图都有一个框架、左上角的标题区和一个内容区。
    如果框架没有提供附加值,则可以省略它,工具提供的图表区域的边界将是隐含的框架。
  4. uml结构
    构造块,公共机制,构架
    构造块
    物件,关系,图
    物件
    结构物件,行为物件,分组物件,注解物件
    关系
    关联,依赖,泛化,实现

    动态模型
    顺序图
    协作图
    状态图
    活动图
    用例图
    静态模型
    类图
    对象图
    构件图
    部署图
    公共机制
    规格说明
    修饰
    公共分类

扩展机制
UML模型至少具有两种维度:
图形维度:允许使用图和图标可视化模型
文本维度:由各种建模元素的规格说明所组成
规格说明
模型元素的特征和语义的文本描述—模型的“肉”
形成了承载模型的语义背板(semantic backplane),赋予模型意义,各种图仅仅是该背板的视图或者可视化投影
death by diagram—由于图形而死亡

修饰:图中建模元素上暴露的信息项以表现某个要点
任何UML图仅是模型的视图,因此,只有在修饰增强了图的整体清晰性和可读性或者突出模型的某些重要特征时,你才应该表示那些修饰

  1. 公共分类
    类元(Classifier)和实例
    类元:一类事物的抽象概念;如bank account
    参与者、类、类元角色、组件、数据类型、接口、节点、信号、子系统、用例
    实例:一类事物的特定实例;如my bank account
    接口(interface)和实现
    接口:说明事物行为的契约(做什么)
    实现:事物是如何工作的特殊细节(如何做

  2. 扩展机制
    约束:允许对模型元素添加新的规则,限制一种或多个元素语义的规则,形式:{约束条件}
    构造型(stereotypes):基于已有的建模元素引入新的建模元素
    The means by which to extend the UML
    Stereotypes convey key properties to the model reader
    A number of stereotypes are packaged along with the UML
    Can define your own stereotypes
    标记值:允许为模型元素添加新的特性,附属于UML元素的各种信息(Property),是带有相关值的关键字,具有形式:{属性名 = 值}

  3. 架构
    用例视图
    逻辑视图
    进程视图
    实现视图
    部署视图

  4. review
    什么是对象?
    面向对象的四个原则是什么?描述每一个。
    什么是班级?类和对象是如何相关的?
    什么是属性?手术?
    定义多态性。提供多态性的示例。
    什么是概括?
    为什么使用软件包?

你可能感兴趣的:(uml,ppt翻译笔记,uml,学习)