StartUML下载http://staruml.io/



软件的基本使用:创建模型


设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_包图

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_02



种类:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_类图时序图_03






1,用例图:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_设计模式1  UML基本使用 用例图_04

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_类图时序图_05

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_06

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_活动图_07

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_08





保存模型:


设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_活动图_09


把保存的文件直接拖到StartUML,可以直接打开该项目



设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_设计模式1  UML基本使用 用例图_10



保存为图片:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_包图_11

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_设计模式1  UML基本使用 用例图_12





2,泛化关系图:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_13



包含   与    扩展:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_包图_14


练习:人事管理系统图:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_活动图_15


3.对象图:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_包图_16

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_活动图_17

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_包图_18

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_设计模式1  UML基本使用 用例图_19



4,时序图

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_20

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_类图时序图_21





5,活动图

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_活动图_22

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_活动图_23

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_24

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_类图时序图_25




6,状态图



设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_26

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_类图时序图_27



7协助图

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_类图时序图_28

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_29




类的关联

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_类图时序图_30




类的聚合

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_31



类的依赖

chunli@linux:~$ cat main.cpp 
//类的依赖,不需要Car类的成员
//需要Car类型的参数

#include<iostream>

class Car
{
public:
	Car()
	{
	}
	void run()
	{
		std::cout<<"car run ....... "<<std::endl;
	}		
};

class People
{
public:
	People()
	{
	}
	void work(Car *car)
	{
		std::cout<<"开车上班了"<<std::endl;
		car->run();
	}
};

int main()
{
	People	*p1 = new People;
	Car 	*car = new Car;
	p1->work(car);	
	return 0;
}
chunli@linux:~$ g++ main.cpp -Wall && ./a.out 
开车上班了
car run ....... 
chunli@linux:~$



chunli@linux:~$ cat main.cpp 
//类的关联关系

#include<iostream>

class Car
{
public:
	Car()
	{
	}
	void run()
	{
		std::cout<<"car run ....... "<<std::endl;
	}		
};

class People
{
public:
	People()
	{
	}
	void work()
	{
		std::cout<<"开车上班了"<<std::endl;
		this->car.run();
	}
public:
	Car car;
};

int main()
{
	People	*p1 = new People;
	p1->work();	
	return 0;
}
chunli@linux:~$ g++ main.cpp -Wall && ./a.out 
开车上班了
car run ....... 
chunli@linux:~$


类的组合

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_活动图_32




练习题:汽车的聚合

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_设计模式1  UML基本使用 用例图_33



部署图:

设计模式1  UML基本使用 用例图,类图时序图,活动图,包图,组件图_组件图_34