- 浏览: 1504853 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (798)
- struts2 (42)
- servlet (20)
- quartz (4)
- jquery & ajax (24)
- tomcat (5)
- javascript (15)
- struts1 (8)
- 搜索关键字及链接 (3)
- fckeditor (3)
- Apache (5)
- spring (22)
- linux (3)
- 企业应用 (8)
- 综合应用 (13)
- 服务器 (2)
- 数据库 (85)
- 性能调优 (21)
- 网络应用 (15)
- 缓存技术 (8)
- 设计模式 (39)
- 面试题 (7)
- 程序人生&前辈程序员 (29)
- java基础 (59)
- hibernate (75)
- log4j (4)
- http (11)
- 架构设计 (28)
- 网页设计 (12)
- java邮件 (4)
- 相关工具 (11)
- ognl (7)
- 工作笔记 (18)
- 知识面扩展 (12)
- oracle异常 (1)
- 正则表达式 (2)
- java异常 (5)
- 项目实践&管理 (1)
- 专业术语 (11)
- 网站参考 (1)
- 论坛话题 (2)
- web应用 (11)
- cxf&webservice (22)
- freemarker (3)
- 开源项目 (9)
- eos (1)
- ibatis (6)
- 自定义标签 (3)
- jsp (3)
- 内部非公开文档(注意:保存为草稿) (0)
- 国内外知名企业 (2)
- 网店 (3)
- 分页 (1)
- 消费者习惯 (2)
- 每日关注 (1)
- 商业信息 (18)
- 关注商业网站 (1)
- 生活常识 (3)
- 新闻 (2)
- xml&JSON (5)
- solaris (1)
- apache.common (3)
- BLOB/CLOB (1)
- lucene (2)
- JMS (14)
- 社会进程 (8)
- SSH扩展 (2)
- 消费心理 (1)
- 珠三角 (1)
- 设计文档 (1)
- XWork&webwork (1)
- 软件工程 (3)
- 数据库及链接 (1)
- RMI (2)
- 国内外知名企业&人物 (1)
最新评论
-
司c马:
简介易懂、
OutputStream和InputStream的区别 -
在世界的中心呼喚愛:
解决我的问题
Java获取客户端的真实IP地址 -
bo_hai:
都是些基本的概念呀!
SSO -
tian_4238:
哥们,你也是搞水利这块的吧。
巧用SQLQuery中的addScalar -
loveEVERYday:
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp小结
以前在做一个项目之前总是在UML的一些概念上花费极大的功夫,得出的图形反而让自己都含糊不清。这两天一口气在网上查了很多相关文章,
在图书管也翻了几本书,给自己定义了一个UML严格的标准。现在拿到网上来,兄弟们帮我看看有那些地方又不妥当的地方。相互学习....
首先弄清楚类图是个什么东西:
类图(class diagram)描述了模型的静态结构,包括模型中的类的类的内部结构以及于其他类的关系,在结构化设计一个系统的时候类图可以让我们的思路更加清晰。
类的内部结构就不用说了,没什么好说的。
一个类与其他的类常见的关系(我所接触到的关系)有:
1.一般化关系
2.关联关系
3.聚合关系
4.组合关系(合成关系)
5.依赖关系
其中,聚合关系合成关系又属于关联关系。
一般化关系表现是与类之间是(is a)的关系。也就是类与类之间的继承,接口于接口之间的继承或者是对一个接口的实现。表示方法是用一个空心箭头+实线,箭头指向父类。或用空心肩头加虚线(如果富父类是接口的话)
如图1,User定义了系统中一个用户的原型,客户Customer继承了User类并且有自己特有的方法。管理员Manager类也继承了User类,并且又自己特有的方法,而且Manager为了能够管理客户还实现了Cmanage这个接口,也就具备了Cmanage的所有功能,可以对客户的余额进行操作,而且还可以删除一个客户。
关联关系表现为类与类之间的(has a)关系。它使一个类知道另一个类的属性和方法。关联关系表示的是类与类之间的持久关系,这种关系一般是表示一种业务逻辑上的关系,需要保存到数据库中的。
如图2.学生Student中存在一个班级Class的引用。在student中可以直接根据引用访问到Class.同时在数据库中存在两张表tb_student,tb_class,在表tb_student中有一个字段存储了所关联的class记录的id。用箭头+实指向被关联的类
聚合关系是关联的一种,是一种强关联关系。聚合关系还体现了一种整体与个体的关系。如图3:
商品ShangPin是独立的,一张进货单JinHuoDan内可以又很多个商品。可以说进货单JinHuoDan是整体,商品ShangPin是个体。可以由进货单JinHuoDan导航到每个进货单包含的商品。空心菱形+实线+箭头指向部分。
依赖关系是表现为类与类之间的一种(use a)的关系。一个类用到了另一个类,为了完成一特定的操作。但是类与类之间不存在业务逻辑上的关系。依赖关系是针对于程序来说的。依赖关系体现在程序中主要是些局部变量、方法参数、或对一个类方法的调用。如图四:
商品管理类ShangPinManager主要对上提供查询商品,删除商品的功能,而这些功能的实现必须调用Dao类的某些方法来实现(一种调用关系)但是他和我们数据库持久类Dao没有业务上的关系,更不可能把这两个类存到数据库中去。虚线+箭头指向被调用的类。
另外我个人觉得利用聚合足以体现合成,没必要分的那么详细。UML本身是一种工具,没必要把太多时间花费在工具的一些概念上面。
发表评论
-
LAMP网站架构方案分析
2011-09-21 11:09 1315LAMP(Linux-Apache-MySQL-PHP ... -
大流量网站的底层系统架构分析
2011-09-10 22:01 1209大流量、高并发的网站的底层系统架构 http://www.h ... -
详细介绍软件架构设计的三个维度
2011-09-07 19:28 1382本文介绍的是软件架构 ... -
十步构建大型网站架构(2)
2011-09-07 16:21 1468架构演变第六步:分库 享受了一段时间的系统访问量高速增长的幸 ... -
十步构建大型网站架构(1)
2011-09-07 16:20 1410今天我们来谈谈一个 ... -
架构、框架、设计模式之间的关系简述
2011-09-07 16:00 1678本文向您讲解架构、框 ... -
UML实践----用例图、顺序图、状态图、类图、包图、协作图
2011-09-07 10:01 1984面向对象的问题的处理 ... -
UML建模之时序图
2011-09-06 20:19 3022http://www.uml.org.cn/oobject/2 ... -
UML 活动图
2011-09-06 20:13 1473UML 活动图记录单个操作 ... -
UML 状态图
2011-09-06 20:04 1328http://www.uml.org.cn/oobject/2 ... -
三种模型
2011-09-06 19:22 1390《uml面向对象建模与设计》本书提出了一套面向对象的表示 ... -
5 款基于 Web 浏览器的建模工具
2011-09-05 10:29 1283http://www.oschina.net/news/209 ... -
UML用例图
2011-09-02 16:31 5062一、UML用例建模简介 ... -
深入浅出REST
2011-08-19 09:48 1172不知你是否意识到,围绕着什么才是实现异构的应用到应用通信的“正 ... -
数据量非常大的照片分享社区网站架构设计
2011-07-21 21:31 9513数据库一向是网站架构中最具挑战性的,瓶颈通常出现在这里。又拍网 ... -
相关知识
2011-07-04 16:34 1289(二) 架构的分类 架构由于应用的不同而存在不同。大体而言, ... -
软件需求分析方法总结--轻巧建模之需求篇(二)
2011-06-27 23:07 2006http://hi.baidu.com/tdskee/blog ... -
软件需求分析方法总结--轻巧建模之需求篇(一)
2011-06-27 23:05 2248需求从哪儿来? 来自于项目甲方,还是直接或间接的用户、经 ... -
软件需求分析方法总结--撰写优秀的需求
2011-06-27 23:04 1633软件需求常常被写得很糟且难于遵循。清楚地阐明你的需求将使每位项 ... -
软件需求分析方法总结--如何分析问题和需求
2011-06-27 23:03 2302如何分析问题和需求 万事开头难,需求没有完全分析清楚,系 ...
相关推荐
总结来说,创建一个C# WinForm UML类图程序需要理解UML的基本概念,熟悉WinForm开发环境,以及掌握图形绘制、文件操作和用户交互的相关技术。通过这种方式,我们可以构建一个直观、易于使用的工具,帮助软件开发者和...
UML类图是UML中最常用的一种图形化工具,用于描述系统的静态结构,包括系统中的类、接口以及它们之间的关系。在UML类图中,存在六种基本的关系类型:泛化、实现、关联、聚合、组合以及依赖。接下来,我们将详细介绍...
总结来说,这个“带UML类图的jdk6文档”资源是一个非常有价值的工具,它结合了文字描述与图形表示,使得开发者能够深入学习和掌握JDK 6 API,从而更好地利用Java进行软件开发。无论你是初学者还是经验丰富的开发者,...
UML(Unified Modeling Language)是一种标准的模型语言,用于设计、描述、构建和文档化软件系统。UML 类图是 UML 中的一种重要模型,用于描述类之间的关系和结构。本实验旨在通过使用 Rational Rose 工具软件,构建...
总结,IBM ETP Java培训12部分的UML类图教程,旨在提升开发者对系统建模的理解,通过学习,我们可以更有效地表达和沟通软件设计思想,提高开发效率,并降低维护成本。掌握UML类图的使用,是每个Java程序员进阶路上不...
### UML类图关系详解 #### 一、引言 统一建模语言(Unified Modeling Language,简称UML)是软件工程领域中广泛使用的一种标准化图形化语言,用于系统建模和文档描述。其中,UML类图作为一种重要的建模工具,主要...
**UML类图工具——StarUML** 在软件开发领域,UML(统一建模语言)是一种标准化的建模工具,用于可视化、构建和文档化软件系统。类图是UML中的一种基本图表,它描绘了类之间的关系,如继承、实现、关联等,帮助...
下面是关于设计模式和UML类图的知识点总结: 一、设计模式概述 设计模式是一种通用的解决方案,它提供了一种通用的解决方案来解决软件设计中常见的问题。设计模式是一种已经被验证的解决方案,可以重复使用,以...
本文将详细介绍Java的经典基础知识、UML类图以及设计模式,为Java开发者提供全面的学习指南。 首先,Java基础知识的学习是任何编程之旅的起点。对于初学者而言,理解Java的基本数据类型,如整型、浮点型、字符型和...
### UML学习总结—类图、序列图 #### UML简介 UML(Unified Modeling Language,统一建模语言)是一种标准化的图形表示方法,用于软件密集型系统的可视化、描述、构造以及文档化工作。UML提供了多种图表工具,能够...
设计模式附录A UML类图PPT学习教案 UML(Unified Modeling Language)是统一建模语言,是一种通用的可视化建模语言,不同于编程语言,它通过一些标准的图形符号和文字来对系统进行建模。UML用于对软件进行描述、...
总结而言,UML类图中的关联、聚合/组合以及依赖关系是描述系统静态结构的重要手段,它们在软件设计和开发过程中扮演着至关重要的角色,帮助开发者理解系统组件之间的相互作用和依赖关系,从而提高软件的可维护性和可...
在这个主题中,我们将详细探讨设计模式及其对应的UML类图。 UML(统一建模语言)是一种图形化表示法,用于描述软件系统的设计和结构。类图是UML中的一种静态视图,它显示了类、接口以及它们之间的关系,如继承、...
UML的核心价值在于为复杂的系统提供了一种标准化的建模方式,使得项目团队能够以图形化的方式进行沟通,从而更容易地分析、设计以及最终实现系统。在进行UML课程设计时,学生通常会通过创建各种UML图来展示其对系统...
总结,"UML大学讲义PPT"是一份适合初学者的资料,涵盖了UML的基础知识和应用,通过学习和实践,你可以逐步掌握如何运用UML进行有效的软件建模。而提供的练习题和答案则能帮助你巩固所学,提升技能。在软件开发的道路...
首先,我们要理解UML是一种标准化的建模语言,它为软件开发提供了一种可视化的方法,涵盖了系统分析、设计和实现的各个阶段。在学生管理系统中,主要会用到以下几种UML图: 1. **用例图(Use Case Diagram)**:...
- **定义**: UML(Unified Modeling Language,统一建模语言)是一种标准化的图形化建模语言,用于软件系统的描述、可视化和文档化。 - **作用**: - 简化复杂的业务领域,帮助开发者更好地理解系统的需求。 - 验证...
总结起来,从电子商务系统的UML图汇总中,我们可以提取和理解涉及的技术要点:UML图表的创建、互联网及其相关技术的运用、不同电子商务模式的理解、前端和后端技术的选择、以及数据库和服务器的配置。这些都是构建一...
总结,SVG设计模式仓库是一个宝贵的资源,通过UML类图的形式展示了设计和架构模式的精髓。无论是初学者还是经验丰富的开发者,都可以从中受益,提升软件设计能力。在学习过程中,应结合代码实例和实际项目去理解这些...
UML标准所涵盖的内容极其丰富,它定义了众多的图表类型,如用例图(Use Case Diagrams)、类图(Class Diagrams)、对象图(Object Diagrams)、活动图(Activity Diagrams)、状态图(State Diagrams)、序列图...