程序员可以用思维导图做什么

199 阅读3分钟

为什么一开始会想写这个,相信所有java学习者一开始都会接触到一个东西,UML(Unified Modeling Language)。 UML是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。UML图,包括用例图、协作图、活动图、序列图、部署图、构件图、类图、状态图。 相信我不用过多解释,应该都有接触过,但是我想问的是,大家平时工作有用到这个玩意吗。对于大厂我不清楚,但对于一直在小厂的我,确实没有用到过,甚至连念头都没有产生过。为什么,理由和借口一堆,项目小型用不上(实际上任何项目如果想用都可以),无法在开始正式编码前想清楚所有逻辑,佛系写码,时间不允许,弄起来麻烦等等。下面是一个示例

图示1
讲真我自己是接受不了,可能从入行一开始就没有养成这个习惯,实际工作中,项目迭代快,小组人员能力参差不齐,也没法作为强制要求,大多数情况下就是指派任务,然后自由佛系发挥,项目跑得起来测试能过就行。或许稳定的后台服务需要这个,而多变的APP用这个神烦?

但最近整理一个Android项目,发现有一个痛点,在不熟悉的情况下,如何掌握页面间的关系,比如某某界面通过哪里跳转到哪里,每次后端或者测试问到某个页面用到什么,从哪里过去时,老是先全局搜索页面关键词(因为对项目不熟),找到这个页面,再去找其中的逻辑,很麻烦。所以突发奇想,如果自己先整理一遍页面关系,记录下来生成独立文档,以后不就好定位了,因为所有的页面在初次开发时,逻辑序列由产品经理定义,相比定义类与类的关系,类该有的属性,简单使用UML来表述页面的关系是不是感觉轻松多了。在开发阶段就可以顺手添加,比如

图示2
这样既记录了页面所属类,也记录了逻辑流向。但自己折腾了一下,发现有点不伦不类,没用到UML的重点(模型和视图),只是用在这个功能的话,完全不需要用UML。改用思维导图来做,随时添加删除,方便好做还好看,虽然我的图示丑了点,例如
图示3
这么一搞是不是感觉清楚多了,而且增删改容易,没什么门槛,几乎大部分在线的思维导图工具都有小组协作模式,开发初期各自按自己的分到的需求顺手添加,不冲突,而且有序的导图,对新人友好,刚入职就能快速定位所属业务页面,快速上手。

总的来说,我觉得忙活这么一出,一个是方便以后查找,还能缕清自己产品业务的主体逻辑,而且上述图示是可以强化增加元素的,比如光用名字自己也不清楚说的是哪个页面的话,可以添加详细的应用截图说明,这样会更明了。总之思维导图,用处不限于这个,但至少简单的使用其特点,对于开发来说,小助手性质吧。