`

程序员的结构化思维方法——一个思维脑图模板

阅读更多

 

      也许是年纪大了,记忆力差了。我喜欢把思考过程和细节都写下下来,免得想不起来和遗漏,也为了防止思维断电。我现在很喜欢把思考过程序列化到本子上或脑图里,已经习惯了这种思考方式。

 

      我在前面一篇文章 阐述了问题构想力在解决问题中的重要作用,本篇文章像深入一下,结合自己的实践,阐述结构化思维方法在开发活动中的运用。它是运用构想力将开发中的问题进行多维度的分析,并给出了每一个开发问题的思考模板。先来看图,我自己发明了一个名字,叫做Color Thinking Template,简称CTT。

 

 

      说到结构化,我从10个方面来描述我在解决开发问题的思考过程。为了便于理解,我用了一个例子,就是验证电子邮件和手机号码问题的例子。


1)Tasks(任务)。 在我不清楚一个问题如何解决时,我要思考一下,大概的解决路径是怎么样的。比如这个问题,我把大问题分成了三个子问题,然后一个一个去解决。首先我去上网搜索电子邮件和手机号码的正则表达式。然后我还要搜java的正则表达式用法,最后编写代码和单元测试。


2)Knowledge(知识)。 在我不知道如何解决问题时,要知道拥有哪些知识可以解决这个问题。


3)Technology(技术)。 需要用到哪些我熟悉的或我不熟悉的技术。

 

4)Rule(业务规则)。 要解决的问题包含哪些业务规则。


5)Analysis(分析)。 对问题进行分析,记录分析过程。

 

6)Design(设计)。 我们在写代码时,处处都是设计,这里记录设计思考点滴,比如可能哪些类,方法等。

 

7)Difficuty(难点)。 列出可能遭遇的困难。

 

8)CodeReview(代码评审)。 列出代码自查或互查的缺陷。


9)Test(测试)。 包括单元测试,数据准备,功能测试等。

 

10)Summary(总结)。 对整个问题解决过程进行总结,反思提高。

 

 

附件我上传了一个mindmanager的模板,大家可以试试看,或根据需要自己修改,找到适合自己的解决问题方法学。

 

 

37
1
分享到:
评论
16 楼 zhangj16 2009-03-14  
很受益,谢谢你的分享。
15 楼 FML 2009-01-23  
不错很值的学习
14 楼 gurudk 2009-01-22  
leton2008 写道

mm8现在不错。要是能有简要的免费的普通版就好了。


可选的很多,XMind,CmapTools,Freemind 都是免费的
XMind是基于Eclipse的
13 楼 xmx0632 2009-01-21  
leton2008 写道

mm8现在不错。要是能有简要的免费的普通版就好了。

freemind现在出到9beta版了
12 楼 leton2008 2009-01-19  
mm8现在不错。要是能有简要的免费的普通版就好了。
11 楼 liugj99 2008-12-28  
楼主用的什么导图工具呀,MindManager吗?


这个与程序员关系密切的脑图真的不错,楼主的思维方式值得学习。
期待更多关于思维及思维导图的使用经验推广一下?
10 楼 wangjianan 2008-12-23  
有个理论和你这个有点相似,但你是解决具体的软件开发问题的,六项思考帽方法是解决普遍问题的,参见我的博客:http://wangjianan.iteye.com/admin/blogs/291984(呵呵,做个广告!)
9 楼 dayang2001911 2008-12-23  
8 楼 gurudk 2008-12-19  
ITdavid 写道

请问楼主,序列图的画,用什么好工具呢?
我在工作中经常会碰到画出程序逻辑图的情况,尤其是当程序逻辑复杂的时候。画出图来,易于理解。

用visio不错,但是我觉的写设计文档有点用,自己整理思路没啥用
7 楼 ITdavid 2008-12-19  
请问楼主,序列图的画,用什么好工具呢?
我在工作中经常会碰到画出程序逻辑图的情况,尤其是当程序逻辑复杂的时候。画出图来,易于理解。
6 楼 shiren1118 2008-12-18  
CTT,CTT

有趣~~~~向你学习
5 楼 qamer 2008-12-18  
4 楼 lym6520 2008-12-18  
很有见解,,
3 楼 JimyChen 2008-12-18  
确实,这些经验太好了,相当的喜欢lz思考的结果。思考的力量太大了!
2 楼 suifeng 2008-12-18  
这些经验太珍贵了, 扩充了我们对软件开发的认识, 同时也把握了软件开发的重点.
  
1 楼 慕容轩 2008-12-18  

学习中!

相关推荐

    软考程序员历年真题2004上——2009下

    首先,我们要知道软考程序员考试是中国计算机技术与软件专业技术资格(水平)考试的一个重要部分,主要考核应试者对计算机基础知识、编程语言、数据结构、算法分析、操作系统、数据库管理、网络基础等多方面知识的...

    程序员的思维修炼_中文版.pdf

    该书非常不错,对程序员的整个思维体系进行了一个总结。

    PHP程序员简历模板 iOS程序员简历模板 Android程序员简历模板 Web前端程序员简历模板 Java程序员简历等等

    iOS程序员简历模板 Android程序员简历模板 Web前端程序员简历模板 Java程序员简历模板 C/C++程序员简历模板 NodeJS程序员简历模板 架构师简历模板 通用程序员简历模板PHP程序员简历模板 iOS程序员简历模板 Android...

    程序员放松经典游戏二——数独

    数独的基本原理是在一个9x9的大方格中,划分成9个3x3的小方格,每个小方格内部,以及整个大网格中,都需要填入数字1到9,使得每一行、每一列以及每一个小九宫格内的数字都必须不重复。这就意味着玩家需要通过逻辑...

    程序员的思维修炼 开发认知潜能的九堂课.pdf

    由于提供的【部分内容】重复多次提及了一个网址(***),这看起来像是文档中可能包含的一个资源链接,提供额外的编程学习资源。这种做法在现代的教育材料中很常见,目的是为了提供更丰富的学习材料,帮助读者更深入...

    程序员如何从小白到大神——免费程序课程培训宣传ppt模板.rar

    总的来说,这份“程序员如何从小白到大神——免费程序课程培训宣传ppt模板”将为程序员提供一个系统化的学习指南,帮助他们规划自己的成长路径,了解需要掌握的关键技能,并通过参加合适的培训课程来不断提升。...

    程序员求职专用简历模板

    这两份专门为程序员设计的简历模板——"简历模板二(明快).doc" 和 "简历模板一(简约).docx",提供了很好的参考,旨在帮助新手程序员更好地展示自己的技能和经验。 首先,简历的基本结构应包括以下几个部分: 1...

    程序员之路——一个老程序员对刚上大学的学弟学妹的忠告.

    程序员之路——一个老程序员对刚上大学的学弟学妹的忠告.

    程序员职业小白书 —— 如何规划和经营你的职业.zip

    《程序员职业小白书——如何规划和经营你的职业》是一份为初入IT行业的程序员量身定制的指南。这本书深入浅出地介绍了如何在快速发展的IT领域中,制定个人职业规划,提升技能,以及如何有效经营自己的职业生涯。以下...

    程序员的羊皮书——程序员必备

    《程序员的羊皮书——程序员必备》是一本旨在帮助程序员提升个人素养与专业技能的书籍。这本书不仅仅关注编程技术本身,而是将重点放在了程序员如何更好地融入职场、提高工作效率和团队协作能力上。"做人"在这里指的...

    程序员简历模板-大数据工程师简历模板

    10 个程序员简历模板_大数据工程师简历模板 10 个程序员简历模板_大数据工程师简历模板 10 个程序员简历模板_大数据工程师简历模板 10 个程序员简历模板_大数据工程师简历模板 10 个程序员简历模板_大数据工程师简历...

    程序员算法趣题——随书源码

    《程序员算法趣题——随书源码》是一个与算法相关的学习资源,包含了增井敏克著作《程序员算法趣题》中的实例代码。增井敏克是算法领域知名的专家,他的书籍通常深入浅出,旨在帮助程序员提升算法思维和解决实际问题...

    黑马程序员入学Java知识——精华总结

    黑马程序员入学Java知识——精华总结

    程序员——必看的文档

    程序员——必看的文档 程序员——必看的文档 程序员——必看的文档 程序员——必看的文档

    数据结构与程序设计—— C++描述(高等教育出版社)

    此外,书中的一个重要部分是关于排序和搜索算法的讲解,如冒泡排序、选择排序、插入排序、快速排序、归并排序、二分查找等。这些算法不仅对理解数据结构至关重要,也是实际编程中经常使用的工具。 在C++描述部分,...

    常用程序员简历模板.zip 常用程序员简历模板.zip

    常用程序员简历模板.zip 常用程序员简历模板.zip常用程序员简历模板.zip 常用程序员简历模板.zip常用程序员简历模板.zip 常用程序员简历模板.zip常用程序员简历模板.zip 常用程序员简历模板.zip常用程序员简历模板....

    程序员面试逻辑思维题.pdf,这是一份不错的文件

    在这份测试题目中,每道题目都提供了一个逻辑推理的前提,然后要求测试者根据前提进行逻辑判断。题目的难易程度不一,从简单的逻辑判断到复杂的逻辑推理,都有所涵盖。 通过这份测试题目,我们可以了解到逻辑思维的...

Global site tag (gtag.js) - Google Analytics