新生代码农如何在硝烟弥漫的商业丛林中生存和崛起? 洞见,让一部分先遇见未来。
最近公司技术部在组织架构师培训,有幸参与。导师老刘特别推荐了UML语言的学习。回想多年来,自己习惯做一些流程图,框图或者所谓的系统架构图也是有的,但是总觉得不太专业。
一方面,有些图是自己的发挥,没有固定的规则。
另一方面,没有使用"行话",不利于和需求方或者技术人员沟通。
Unified Modeling Language (UML)又称统一建模语言或标准建模语言,它早已经是软件行业被认可的统一建模语言。并且,UML为我们提供了用例图,对象图,顺序图,通信图,类图,状态图,活动图,包图,构件图,部署图等可以表示从需求到软件设计过程中的各种场景。掌握UML,可以更好的帮助技术开发人员提高软件架构设计能力。以下是其中一堂课的设计题目和自己的设计,没有标准答案。感兴趣的童鞋可以尝试画一画。
题目
设计
看了需求文档,对贪吃蛇游戏的需求理解可以大致如下流程:
UML静态类图以下类图基于代码文件renewofsnake.html
总结
逐渐对类图的组合和聚合关系有了更深理解。但每次画图总感觉,类图不能完全表达自己的意思,可能需要配合多种图才更全面。不知道理解的对不对。设计的事情仁者见仁智者见智,没有最好, 只有更好。坚持去做了,一定会有成长。