怎样才能建立自己的知识体系呢?
- 选择方向,设定目标
- 学习、实践、输出、内化
- 同主题扩散
- 运用工具整理记录知识图谱
- 迭代与更新知识图谱
有目标,才有知识体系
如果只能选择一个方向,你希望在什么方向上做到出类拔萃?
对这个问题的思考,会帮助你找到自己的方向,进而有效地去学习知识。
构建个人知识体系的第一步是定位
知识体系和我们的个人目标与关注点有关,你的取舍决定了你的关注点。每个人都需要根据自己的目标和关注点来建立自己的知识体系。
简单的说,比如你想成为像Linux内核创建者Linus Torvalds那样的人,在Linux操作系统方面做出卓越的贡献,那你就能迅速定位你的知识系统的大方向——Linux操作系统开发。
比如你想成为像秋叶大叔(秋叶PPT)那样的人……
比如你想成为像马云那样的企业家……
这个探索过程可能很慢,需要几个月或者几年,也可能只要一个瞬间。无论长短,最重要的是,你必须有想象力,愿意成为自己这艘即将远航的旗舰的舵手。
推荐几本书有助于你的自我探索:
发现你的天赋
持续的幸福
你的生命有什么可能
精进:如何成为一个很厉害的人
知识的内化
一个人的能力分三个层次:
- 资源:比如知识、技能、经验、精力、人脉等。
- 应用流程,即使用资源解决问题的能力:做事的方法、流程、策略等,整合应用资源创造价值的能力。
- 价值取向,即你觉得什么事情重要,什么事情不重要。
知识是一种资源,是固化的,必须经过你的应用流程,才能内化为自己的经验,帮助你解决工作与生活中的问题,为你创造价值。
只有知识,没有内化,那结果不堪一击。
像神仙姐姐王语嫣,牢记每一种武林秘籍,但是一招也打不出来,与人对战只有被秒杀的份儿。
像《围城》里的方鸿渐,也学习了很多乱七八糟的知识,但赵辛楣评价他说:“你是个好人,但一无是处”,这也是因为他涉猎很多都不能落地应用创造价值。
我见过一些软件开发者,说起编程语言里的某个知识点,哪哪儿都清楚,但让他写程序,就是一团麻乱,根本想不起来要用什么,要到处问,List怎么用,StringBuilder怎么用,ListView该怎么用,问半天也还是不会用……
所以我们一定要把显性的知识内化为自己的隐性知识,变成自己的能力。
学习现状
很多知识都经由前人的总结显性化了,固化在书本、网络、视频等载体上,我们就从这些载体上开始学习。这是第一步,它让我们知道有这样一个知识、这个知识是什么、这个知识可以用来解决什么问题。
不要停,你到了这一步千万不要停,要接着去琢磨:
- 这个知识对我有什么用?
- 我过往的工作与生活中,哪些经历、经验可以和这个知识关联起来?
- 在将来,这个知识能怎样帮助我改善自己的工作?
很多人看书、看视频、听演讲,根本不琢磨,只是被动接收,只是“浏览”到有这么个东西,“哦”一声就过去了。所以,他们很难有进一步的收获。
很多人过度依赖搜索引擎,比如ListView不会用,Google一下,拷贝粘贴一段代码来解决自己的问题。但是解决之后往往就放下了,不再琢磨这段代码为什么能解决问题、我为什么没想到、下次我怎样才能自己来解决问题,这样做的后果就是,遇到问题永远在问搜索引擎,永远也培养不出独立思考并解决问题的能力。
如何内化
如果你能够把自己应用知识解决问题的过程,收获的经验,再转化出来,分享给别人,帮助别人解决问题,那你对知识的掌握将更进一步。
这也是CSDN上很多博主的做法:用输出倒逼输入。也是我的做法,我的公众号“程序视界”(id:programmer_sight)每周发布三篇原创文章,就是一种倒逼机制,我要逼着自己通过输出的方式来内化知识。现在形成习惯,基本上没什么压力了。
输出是内化知识的最有效的途径当你准备输出时,会考虑很多很多,比你自己使用知识时考虑的要多很多,比如怎样讲明白、比如怎样让结构清晰、比如怎样设计示例辅助说明、比如这个知识点与哪些关联、比如哪些关联的知识点必须讲清楚……所有这些,会让你进一步思考知识,会让你系统化你的知识,最终会加深你对知识的理解与应用。
同主题扩散
很少有知识是孤立的,也很少有哪个方向只需要一种知识就可以真正解决问题。
比如你做桌面客户端产品开发,选择C++语言作为主要开发语言,但C++语言本身绝对完成不了这个任务,你必须在同一个主题内寻找其他的支撑,比如Qt,比如MFC,比如wxWidgets。
这正是我们构建知识体系必须要经历的过程:在同一主题不断挖掘相关知识,完善你的知识图谱。
比如我曾画过一张学习C++的图谱
从图上就可以看出来,C++是知识的中心,围绕着它有很多相关联的知识。那么,怎么发现同一主题内还有哪些知识需要学习呢?比如学习C++,多问问下面的问题会有帮助:
- 为了解决A问题,除了这个知识,还需要哪些知识、工具?
- 这个知识是由什么知识发展来的,什么新的发展?
- 关于这个知识,有哪些书和资料?
- 在这个领域,有哪些大咖,他们在学什么?
- 关于这个知识,还有哪些是我不知道的? 查看C++知识库
如果你能不断思考这些问题,就能不断找到需要进一步学习的知识,就能不断扩大自己的学习区,最终就能不断地丰富自己的知识体系。
好啦,到现在为止,我们介绍了构建个人知识体系的三个基本的步骤:确立方向,内化和同主题扩散。
接下来我们介绍让我们的知识库持续发展永葆青春的两个步骤:记录与迭代。
使用工具固化你的知识库
大脑容量有限,必须借助工具将我们的知识系统记录下来。有非常多的工具可以使用,比如:
在上面这些工具中,其实图书更多时候是你系统化自己知识的一种产出物,比如我在CSDN博客发布的文章多了,就结集出版了几本书:《Qt Quick核心编程》、《你好哇,程序员》。电子书也是类似的。
在选择工具系统时,遵循下面的原则:
每个人都可能使用不同的工具来固化自己的知识库,不必追求与别人一致,我目前使用有道云笔记、CSDN博客、CSDN知识库、脑图、图书等工具来记录知识。
脑图工具我用的是XMind的社区版,这是我学习Qt时绘制的:
脑图的好处是你可以很方便的记录、分支、补充,也能很好体现知识的关联。但它不方便的地方在于,你往往只能记录一些关键词,大量的知识或者系统化的文章不太方便体现。
那后者,可以使用CSDN博客与CSDN知识库的组合来完成。
评论