随笔分类 - UML与设计模式
摘要:工厂模式 概念 工厂方法模式同样属于类的创建型模式又被称为多态工厂模式 。 工厂方法模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。 核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以
阅读全文
摘要:什么是简单工厂模式? 简单工厂模式属于类的创建型模式,又叫做静态工厂方法模式。通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 模式中包含的角色及其职责 1.工厂(Creator)角色 简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所
阅读全文
摘要://1"懒汉"模式虽然有优点,但是每次调用GetInstance()静态方法时,必须判断 // NULL == m_instance,使程序相对开销增大。 //2多线程中会导致多个实例的产生,从而导致运行代码不正确以及内存的泄露。 //3提供释放资源的函数 讨论: 这是因为C++中构造函数并不是线程
阅读全文
摘要:概念 单例模式是一种对象创建型模式,使用单例模式,可以保证为一个类只生成唯一的实例对象。也就是说,在整个程序空间中,该类只存在一个实例对象。 GoF对单例模式的定义是:保证一个类、只有一个实例存在,同时提供能对该实例加以访问的全局访问方法。 为什么使用单例模式? 在应用系统开发中,我们常常有以下需求
阅读全文
摘要:最终目的:高内聚,低耦合 1) 开放封闭原则 (OCP,Open For Extension, Closed For Modification Principle) 类的改动是通过增加代码进行的,而不是修改源代码。 2) 单一职责原则 (SRP,Single Responsibility Princ
阅读全文
摘要:模式:在一定环境下,用固定套路解决问题。 设计模式(Design pattern) 是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代 码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化
阅读全文
摘要:如何在统一软件开发过程中使用UML? 起始阶段常用UML图 在起始阶段,通常有用例图、类图、活动图、顺序图等UML图的参与。 获取用户需求之后首先要将这些需求转化为系统的顶层用例图。 在确定了用例之后,需要为重要用例添加事件流描述。有了事件流描述之后就可以为一些用例中使用到的系统功能来指定分析类。
阅读全文
摘要:基本概念:是一种展示运行时进行处理的节点和在节点上存在的制品的配置的图。 部署图它阐述了在实际应用中软件和它的运行环境的关系,并且描述了软件部署在硬件上的具体方式。 部署图中的主要元素包括节点与节点之间的关联关系。此外,部署图中也可以使用注解和约束。 部署图的组成元素:节点、部署图中的关系。 节点
阅读全文
摘要:基本概念:组件图即是用来描述组件与组件之间关系的一种UML图。组件图在宏观层面上显示了构成系统某一个特定方面的实现结构。 组件图中主要包含三种元素,即组件、接口和关系。 组件图通过这些元素描述了系统的各个组件及之间的依赖关系,还有组件的接口及调用关系。此外,组件图还可以使用包来进行组织,使用注解与约
阅读全文
摘要:基本概念:是UML中一种重要的用于表达系统动态特性的图 活动图的作用是描述一系列具体动态过程的执行逻辑,展现活动和活动之间转移的控制流,并且它采用一种着重逻辑过程的方式来叙述。 在对软件密集系统建模的时候,有时需要详细地模拟系统在运作时的业务流程。面对这种需要,我们可以分析对象间发生的活动和触发条件
阅读全文
摘要:状态机图 基本概念: 状态机图,UML 1.x规范中称状态图,是一个展示状态机的图。 状态机图基本上就是一个状态机中元素的投影,这也就意味着状态机图包括状态机的所有特征。状态机图显示了一个对象如何根据当前状态对不同事件做出反应的动态行为。 状态机图主要由状态和转换两种元素组成。 状态机 状态机是一种
阅读全文
摘要:顺序图的概念: 顺序图是按时间顺序显示对象交互的图。它显示了参与交互的对象和所交换信息的先后顺序,用来表示用例中的行为,并将这些行为建模成信息交换。 顺序图是一种交互图,强调消息的时间顺序,亦称时序图 顺序图主要包括四个元素:对象、生命线、激活和消息。 在UML中,顺序图将交互关系表示为一张二维图。
阅读全文
摘要:通信图的概念:通信图(协作图)是表现对象交互关系的图,它展现了多个对象在协同工作达成共同目标的过程中互相通信的情况,通过对象和对象之间的链、发送的消息来显示参与交互的对象。 首先通信图一样是一种交互图,它描述的是对象和对象之间的关系,即一个类操作的实现。简而言之就是,对象和对象之间的调用关系,体现的
阅读全文
摘要:包图的基本概念: 包图是用来描述模型中的包和所包含元素的组织方式的图,是维护和控制系统总体结构的重要内容。 包图能够组织许多UML中的元素,不过其最常用的用途是用来组织用例图和类图。 包图中包含包元素以及包之间的关系。与其他图类似,包图中可以创建注解和约束。 包的概念: 包是用于把模型组织成层次结构
阅读全文
摘要:对象图 对象图概述:对象图显示了某一时刻的一组对象及它们之间的关系。 对象图可以看做是类图的实例,用来表达各个对象在某一时刻的状态。 对象图中的建模元素主要有对象和链,对象是类的实例,链是类之间的关联关系的实例。 对象图的组成元素——对象 对象是类的实例,是一个封装了状态和行为的具有良好边界和标识符
阅读全文
摘要:类图的定义:是显示一组类、接口、协作以及它们之间关系的图。 类图主要包含7种元素:、类、接口、协作、依赖关系、泛化关系、实现关系、关联关系。 类图:包、子系统,用来把模型元素聚集成更大的组块。 类图:约束、注解 类 1.类是一组拥有相同的属性、操作、方法、关系和行为的对象地描述符。 2.类定义了一组
阅读全文
摘要:用例图 用例图是用来描述系统功能的技术,表示一个系统中用例与参与者及其关系的图,主要用于需求分析阶段。 用例图的基本组成元素:参与者、用例、元素之间的关系。 用例图使用范围:需求分析 1.捕获需求。描述功能需求、行为需求(系统要完成什么任务) 2.分析需求。明确类和对象,建立之间的关系 用例图的基本
阅读全文
摘要:什么是UML? 统一建模语言(UML)是一种通用的可视化建模语言,可以用来描述、可视化、构造和文档化软件密集型系统的各种工件。 UML是独立于过程的,它适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具。 注:UML不是一种程序设计语言,其描述的模型可以和各种编程语言相联系
阅读全文