★雪峰的Blog★

Learn Java, earn money!

用户操作
[即时聊天] [发私信] [加为好友]
XuefengID:asklxf
638913次访问,排名59好友0人,关注者15
asklxf的文章
原创 189 篇
翻译 0 篇
转载 19 篇
评论 519 篇
Xuefeng的公告



新书上市:《Spring 2.0核心技术与最佳实践》!
查看目录
访问JavaEE开发网




自我介绍
Xuefeng北京邮电大学本科毕业,精通J2EE/J2ME,欢迎交流

最近评论
cs_xiaoxiao:很好,推荐!
cs_xiaoxiao:很好,推荐!
123:scions of fate
scions of fate gold
为什么阅读全文的链接是这个地址?http://www.crackj2ee.com/Article/ShowArticle.asp。是谁中毒了?
lujing_angelar:为什么阅读全文的链接是这个地址?http://www.crackj2ee.com/Article/ShowArticle.asp。是谁中毒了?
文章分类
收藏
相册
Books
Landscape
MSN
Personal
Java站点
JavaEE开发网(RSS)
Live在线书店
中华诗词
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky

原创 Jexi设计 (6) Document类的UML收藏

新一篇: Jexi设计 (6) View设计 | 旧一篇: 习惯三:要事第一

前面讨论了用Document类表示MVC结构中的文档,并抽象出接口Glyph用于Composite模式,派生两类Glyph:基本数据结构CharPictureParagraph;显示模型结构RowPage,UML图如下:

Glyph体系的UML图

对于任意一个Glyph对象,它可以知道:

  • 自身的子结点 - child(), size();
  • 添加,删除子结点 - add(), remove();
  • 自身占据的大小 - width(), height();
  • 如何画出自身 - draw()。

如果某一个具体的子类不支持某种方法,就直接抛出UnsupportedOperationException

Row是联系Paragraph和Page的对象,Paragraph通过排版产生Row,然后构造出Page。

为了和显示联系起来,添加Style以决定如何显示。为了独立出排版逻辑,添加Compositor,整个Document类的关系如下:

Document UML

点击此处查看全图

欢迎各位Blogger提出意见!

发表于 @ 2004年07月24日 00:17:00|评论(loading...)|编辑

新一篇: Jexi设计 (6) View设计 | 旧一篇: 习惯三:要事第一

评论

#mingjava 发表于2004-07-25 09:32:00  IP: 211.94.174.*
用什么工具画的UML图 我也去下一个
#Xuefeng 发表于2004-07-25 11:33:00  IP: 218.106.169.*
正版Rose2003,改天拿活动硬盘来copy
#mingjava 发表于2004-07-26 09:27:00  IP: 210.51.19.*
牛啊 你怎么弄到正版了 八月份我过去一趟 过几天可能要回家了
#seangun 发表于2004-08-12 12:13:00  IP: 129.223.236.*
StringStyle为什么要有paragraph的引用?
#Xuefeng 发表于2004-08-12 19:14:00  IP: 218.106.169.*
方便,可以直接从
StringFormat.getParagraph().get(index)访问其中一个glyph

我把StringStyle名字改成了StringFormat
发表评论  


登录
Csdn Blog version 3.1a
Copyright © Xuefeng