OOAD和UML
ooad: object oriented analysis designer
又有两个分支:
ooa(object oriented analysis):what to do
ood(object oriented designer):how to do
UML:Unified Modeling Language,它是为了更好的实现OOAD
加粗部分是常用图
静态模型:用例图、类图、对象图、组件图、部署图 (UseCaseDiagram、ClassDiagram、ObjectDiagram、ComponentDiagram、DeploymentDiagram)
动态模型:时序图、协作图、状态图、活动图(SequenceDiagram、CommunicationDiagram、StageDiagram、ActivityDiagram)
以下例图都是基于astah工具画的,staruml这个工具也不错
architexa:eclipse里面画时序图、类图的插件(地址:http://www.architexa.com/),很方便,用之前建立一次索引,然后将你所需要的类拖进去,就能生成他们之间的关系图
用例图:
类图:
对象图:
组件图:
部署图:
时序图:
得注意,消息中的方法是右边的对象的方法,比如verify()是scanner的方法,而不是admin的,之前一直用错了,而且没有很具体的去画一个
协作图:
状态图:
活动图:
UML建模系列文章总结: http://www.cnblogs.com/ywqu/archive/2009/12/29/1634804.html
UML类图之间的关系(泛化 、继承、实现、依赖、关联、聚合、组合):http://www.cnblogs.com/olvo/archive/2012/05/03/2481014.html
UML类图总结——基于astah :http://blog.csdn.net/vipygd/article/details/9207539
UML系列——时序图(三国顺序图):http://www.lupaworld.com/article-233409-1.html
OOAD和UML的更多相关文章
- 《OOAD与UML那点儿事》目录索引
关键字:OOAD.UML.设计模式 各位园友,大家好,我是Bobby,在学习OOAD和开发的项目的过程中有一些感悟和想法,整理和编写了一些学习资料 [内容简介]掌握某种开发语言,让你实现了由零到一的脱 ...
- OOAD与UML笔记
UML基础介绍 1.UML的定义 统一建模语言(UML)是一种图形化的语言,它可以帮助我们在OOAD过程中标识元素.构建模块.分析过程并可通过文档说明系统中的重要细节 2.OOAD OO ...
- 笔记一:OOAD与UML
一.面向对象的概念与方法 1. 面向对象 1.1. 面向对象是一种系统建模技术 1.2. 面向对象编程是按照OO的方法学来开发程序的过程 1.3. 通过分析系统内对象的交互来描述或建模一个系统 1. ...
- OOAD与UML
UML基础介绍 1.UML的定义 统一建模语言(UML)是一种图形化的语言,它可以帮助我们在OOAD过程中标识元素.构建模块.分析过程并可通过文档说明系统中的重要细节 2.OOAD OOAD是根据OO ...
- 【OOAD】OOAD概述
什么是面向对象? OOP:面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构.OOP 的一条基本原则是计算机程序是由单个能够起到子程序 ...
- 为什么需要学UML建模
今天在看<设计模式>的时候,看到了许多的UML模型图,案例中作者用极少的代码却能讲清楚讲好设计模式的背景和思想,抽象成一张张的UML图就能很好的review和复盘,这对于在工作中习惯用代码 ...
- .NET应用架构设计—面向对象分析与设计四色原型模式(彩色建模、领域无关模型)(概念版)
阅读目录: 1.背景介绍 2.问自己,UML对你来说有意义吗?它帮助过你对系统进行分析.建模吗? 3.一直以来其实我们被一个缝隙隔开了,使我们对OOAD遥不可及 4.四色原型模式填补这个历史缝隙,让我 ...
- .NET知识结构
.NET知识结构 .NET介绍 微软.NET战略及技术体系,.NET Framework框架类库(FCL),公共语言运行时(CLR),通用类型系统(CTS),公共语言规范(CLS),程序集(Assem ...
- JAVA架构师要求
JAVA架构师要求专业素质要求:1.理解架构师的职责和架构设计的目标.原则及取舍:2.精通架构模式,Transaction.Security.Persistence等机制及实现,IOC.AOP.SOA ...
随机推荐
- OpenStreetMap地图数据介绍(转)
原文链接:每日一读 Packtpub.OpenStreetMap(1) 相信绝大多数人都知道Wiki,但要提起地图,大家第一反应肯定是Google地图.在没看这本书之前,还真不知原来还有OpenStr ...
- WebViewClient 简介 API 案例
代码位置:https://github.com/baiqiantao/WebViewTest.git 设计思想理解 在WebView的设计中,不是什么事都要WebView类干的,有相当多的杂事是分给其 ...
- [Angular] Use ngx-build-plus to compile Angular Elements
We can treat Angular Element as each standlone lib and compile each Angular element spreatly. Tool w ...
- (LeetCode 189)Rotate Array
Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the array ...
- linux cp覆盖每次都有提示
1.cp命令,目标已经存在,每次都提示是否覆盖,怎么办? 2.cp --help 可以看到选项-i的时候,才会提示,但是这里并没有-i,为什么每次都有提示? 3.原因是:这里执行的cp是一个别名,通过 ...
- 以Settings.APPLICATION_DEVELOPMENT_SETTINGS打开开发人员面板出错总结
近期遇到了一个问题,感觉须要记录一下. 要打开开发人员面板,之前的代码例如以下: Intent intent = new Intent(Settings.ACTION_APPLICATION_DEVE ...
- MAC下PHP开发
ZendStudio 10.5安装: http://blog.sina.com.cn/s/blog_7c8dc2d50101nhvb.html PHP+MySQL+Apache开发环境安装:XAMPP ...
- nginx学习笔记(四)-----日志切割脚本及定时任务
一.日志切割脚本 #!/bin/sh #nginx目录 BASE_DIR=/usr/local/nginx #生成的日志 BASE_FILE_NAME=jonychen.access.log CURR ...
- 算法笔记_123:蓝桥杯第七届省赛(Java语言B组部分习题)试题解答
目录 1 凑算式 2 方格填数 3 四平方和 1 凑算式 凑算式 B DEF A + --- + ------- = 10 C GHI (如果显示有问题,可以参见[图1.jpg]) 这个算式中A ...
- PHP中静态方法(static)与非静态方法的使用及区别
今天再次学习这个内容,总是糊里糊涂的,想弄明白!!! static关键字用来修饰属性.方法,称这些属性.方法为静态属性.静态方法.static关键字声明一个属性或方法是和类相关的,而不是和类的某个特定 ...