新生代码农如何在硝烟弥漫的商业丛林中生存和崛起? 洞见,让一部分先遇见未来。

最近公司技术部在组织架构师培训,有幸参与。导师老刘特别推荐了UML语言的学习。回想多年来,自己习惯做一些流程图,框图或者所谓的系统架构图也是有的,但是总觉得不太专业。

一方面,有些图是自己的发挥,没有固定的规则。

另一方面,没有使用"行话",不利于和需求方或者技术人员沟通。

Unified Modeling Language (UML)又称统一建模语言或标准建模语言,它早已经是软件行业被认可的统一建模语言。并且,UML为我们提供了用例图,对象图,顺序图,通信图,类图,状态图,活动图,包图,构件图,部署图等可以表示从需求到软件设计过程中的各种场景。掌握UML,可以更好的帮助技术开发人员提高软件架构设计能力。以下是其中一堂课的设计题目和自己的设计,没有标准答案。感兴趣的童鞋可以尝试画一画。

题目

设计

看了需求文档,对贪吃蛇游戏的需求理解可以大致如下流程:

UML静态类图以下类图基于代码文件renewofsnake.html

总结

逐渐对类图的组合和聚合关系有了更深理解。但每次画图总感觉,类图不能完全表达自己的意思,可能需要配合多种图才更全面。不知道理解的对不对。设计的事情仁者见仁智者见智,没有最好, 只有更好。坚持去做了,一定会有成长。

技术人应该学习的行话--UML统一建模语言的更多相关文章

  1. 设计模式学习总结(一)——设计原则与UML统一建模语言

    一.概要 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经过分类的.代码设计经验的总结. 使用设计模式的目的:为了代码可重用性.让代码更容易被他人理解.保证代码可靠性. 设计 ...

  2. 1. UML统一建模语言

    (1)UML概述: 建模: 对现实系统进行适当的过滤, 用适当的表现规则描述出简洁的模型. 建模是一种深入解决问题的方法. UML: UML(United Modeling Language, 统一建 ...

  3. UML统一建模语言

    概述 统一建模语言(UML)是一种图形化的语言,用于软件密集系统要素的可视化.制定规范.构建对象和编写文档.UML提供了一种标准的方式来描述系统的设计图,既包括概念方面,例如业务过程和系统功能,也包括 ...

  4. 2017.12.23 第二章 统一建模语言UML概述

    第二章 统一建模语言UML概述 (1)为什么要建模 模型是某个事物的抽象,其目的是在构建这个事物之前先来理解它,因为模型忽略了那些非本质的细节,这样有利于更好的理解和表示事物: 在软件系统开发之前首先 ...

  5. UML标准建模语言与应用实例

    一.基本信息 标题:UML标准建模语言与应用实例 时间:2012 出版源:科技创新导报 领域分类:UML标准建模语言 面向对象 系统分析与设计 二.研究背景 问题定义:UML建模语言用图形来表现典型的 ...

  6. 统一建模语言UML---类图

    什么是统一建模语言,来看看百科中的介绍统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明.可视化和编制文档的一种标准语言,是非专利的第三代建模 ...

  7. 统一建模语言UML

    目录 1. UML定义 2. UML结构 2.1 视图(View) 2.2 图(Diagram) 2.3 模型元素(Model element) 2.4 通用机制(General mechanism) ...

  8. 【UML】统一建模语言

    如果是准备学习设计模式的同学,可以只了解类图相关的知识 而如果是在准备软件设计师考试的同学,或许会对你有点帮助 正在施工...... 参考博客:https://blog.csdn.net/unique ...

  9. UML2.0统一建模语言

      Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规 ...

随机推荐

  1. ffplay播放器移植VC的工程:ffplay for MFC

    本文介绍一个自己做的FFPLAY移植到VC下的开源工程:ffplayfor MFC.本工程将ffmpeg项目中的ffplay播放器(ffplay.c)移植到了VC的环境下.并且使用MFC做了一套简单的 ...

  2. 1022. Digital Library (30) -map -字符串处理

    题目如下: A Digital Library contains millions of books, stored according to their titles, authors, key w ...

  3. iOS学习新知识-加速计和陀螺仪

    一.CoreMotion框架介绍 我们知道有一些iOS的应用,会有一些特殊的要求,比如: 电子罗盘指南针之类的应用:让我们知道方向. 运动类型软件:让我们知道我们跑步多少公里. 社交软件中的摇一摇功能 ...

  4. Java 中Log4j的使用详情

    Log4j 真的很简单,简单到令人发指的地步.不是要记录日志吗?那就给你一个Log ,然后你用Log 来写东西就行了,先来一个完整类示例: package test; import org.apach ...

  5. Linux下修改Oracle数据库字符集命令

    常见情形:从服务器备份Oracle数据库后再到本地机器上还原Oracle数据库的时候经常会碰见数据库字符编码不一致的情况,可以用以下命令来修改本地的Oracle数据库字符编码,然后顺利还原Oracle ...

  6. 强力推荐各位攻城狮查看,收藏IT职业技能图谱(全套13张)

    汇集整理泛 IT 技术领域(云计算,大数据,运维,安全,开发语言,智能硬件等)学习技能图谱,帮助程序员梳理知识框架结构,并尝试提供路径指导和精华资源,方便技术人学习成长. 运维工程师必备技能 程序开发 ...

  7. C语言之统计输入字符数量

    这个程序市委了统计所输入的数字或者英文字母的数字的数量,当然稍加改动便可以统计特殊字符的个数,在此不再冗叙. 代码如下: #include <iostream> using namespa ...

  8. 9.3、Libgdx手势检测

    (官网:www.libgdx.cn) 触摸屏在输入的基础上增加了手势检测,比如两个手指实现缩放,单击或双击屏幕,长按屏幕等. Libgdx提供了GestureDetector来帮助你检测以下手势: t ...

  9. ActionScript 3.0 API 中的 Video 类

    注:这个类在Flash流媒体开发中使用的很频繁,在此记录一下它的使用方法. 包 flash.media 类 public class Video 继承 Video  DisplayObject  Ev ...

  10. Android中代码运行指定的Apk

    有时候,当我们编写自己的应用的时候,需要通过代码实现指定的apk,安装指定的主题,或者安装新的apk.可以通过以下方法实现: private void installAPK(String apkUrl ...