闲得蛋疼,UML实现nodeclub-master
发布于 11 年前 作者 lc60005457 4942 次浏览 最后一次编辑是 8 年前

刚刚接触UML,不知道UML是不是JAVA的专利,没有找到其他语言的半点UML案例。

尝试用UML画了一下nodeclub-master,希望能助大家更方便的分析本社区的源码。

UML实现nodeclub-master

也是由于UML/JAVA的缘故,括号里注UML原在JAVA中的用法。

箭头标示依赖,(继承/实现)

实线表示依赖内部Module,(继承类)

虚线表示依赖系统Module/外部Module,(实现接口)

interface表示系统Module/外部Module,(接口)

Enumeration表示附加的数据类型,(枚举)

点击这里查看高清SVG,需浏览器支持

9 回复

没学过 SVG 的只能说赞了… 楼主的 SVG 在 OS X Chrome 上有些问题, Interface 显示出错了

« Interface »

UML不是JAVA的专利,UML是一种更接近自然语言的计算机语言描述。通过UML的几种图,可以清楚的表达一个软件设计的思路。

如果你能再分模块画一下,应该就更清楚了。

真是惭愧,这jpg和SVG都是UML工具自动生成的

谢谢指点,分模块能说的更详细一些么?UML如何更适应Node.js呢?

@lc60005457 不好意思我打错, 我是没正经学过 UML >_<

这个nodeclub-master这么多文件,是一个人还是团队完成的呢?团队的话,如何安排任务,处理合作关系呢?也希望社区不要太专注于技术,多讨论一下node.js相关的软件工程吧。

@lc60005457 貌似一个人开发加两三人维护加若干人提交 PR…

@lc60005457

  • 你现在画的对应到UML是类图,类图是一种静态图,表示各个类之间的关系的。这个图很大,你可以分成多个部分画了来,而不是完全放到一个图里面。

比如:右下角的proxy/user和app.js没有什么关系,可以不用出现在一张图中。

  • 另外,如果想继续用UML完善设计图,可以画顺序图和状态图,分别表示接口调用和数据流。

  • 还可以画用例图,用来描述软件的设计需求是什么。

  • 部署图,用来告诉我们这个软件图,如何单机部署,集群部署,如果实现多节点的通信。。。

  • UML定义中有9种图,是我们设计软件所常用的。一般中大型的项目(上千万投资的)都要求有完备的UML图。不过对于“个人网站”这种要求就变得不太现实了。

从学习的角度,当然整体做一遍,才能真正学会。

厄, 好强大

回到顶部