思维导图
高效学习系列文章主要从学习态度、学习方法、代码阅读和枯燥大量知识学习几个角度介绍了如何高效学习的问题。
思维导图如下:
摘录
-
在 Google、Stack Overflow、GitHub 过后,你会发现,你掌握的知识就是一块一块的碎片,既不系统,也不结构化,更别说融汇贯通了。你会觉得自己需要好好地读一本书,系统地掌握知识。你的这种感觉一定很强烈吧。
学习是为了改变自己的思考方式,改变自己的思维方式,改变自己与生俱来的那些垃圾和低效的算法。总之,学习让我们改变自己,行动和践行,反思和改善,从而获得成长。
一旦理解和掌握了这些本质的东西,你就会发现,整个复杂多变的世界在变得越来越简单。你就好像找到了所有问题的最终答案似的,一通百通了。
文字版提纲
学习态度
大部分人问题
- 只有意识没有行动 -> 动力不足
- 不知道该学什么 -> 缺乏方向和目标
- 不具备自主学习的能力 -> 没有正确的方法和技能
- 缺乏实践和坚持
主动学习与被动学习
- 被动学习:听讲、阅读、视听、演示
- 主动学习:讨论、实践、教授给他人
学习不是努力读更多的书,盲目追求数量和速度。要思辨,要践行,要总结和归纳,否则只是机械重复,不会有质的成长
浅度学习与深度学习
- 现状:快餐文化短暂满足,越学越焦虑、越学越浮躁、越学越不会思考
- 深度学习方法
- 高质量的信息源和第一手的知识
- 把知识连成地图,将自己的理解反述出来
- 不断地反思和思辨,与不同年龄段的人讨论
- 举一反三,并践行之,把知识转换成技能
- 学习步骤
- 知识采集
获取信息源、破解表面信息内在本质、多方数据印证 - 知识缝合
连接记忆、逻辑推理、知识梳理 - 技能转换
举一反三、实践和练习、传授教导
- 知识采集
学习的观点
- 学习是为了找到方法
- 学习是为了找到原理
- (融会贯通、第一性原理)
- 学习是为了了解自己
- 学习是为了改变自己
学习方法
挑选知识和信息源
- 应该是第一手资料
- 应该是有佐证、数据、引用或权威人士或大公司生产系统背书的资料
- 信息密度很大的,加入了经验和思考,可以发人深思的
注重基础和原理
- 表现形式差异、但是原理是一样的
(加快学习速度|正向循环)
使用知识图
脑中整理知识树|对知识进行整理
系统地学习
- 模板
- 技术出现的背景、初衷、要达到的目标或者是解决的问题
- 技术的优势和劣势、trade-off是什么
- 技术适用的场景
(业务场景、技术场景) - 技术的组成部分和关键点
- 技术的底层原理和关键实现
举一反三
- 联想能力
- 抽象能力
- 自省能力
总结和归纳
- 结构化 -> 总结规律 -> 形成通用方法
(更高维度上思考的能力) - 坚持不懈
学习和阅读代码
读文档还是代码?
- 书、文档:了解思想、方法和原理
(点状知识过于碎片化,需要归纳串联) - 代码:具体细节
代码阅读方法
- 前提
- 基础知识
- 软件功能
- 相关文档
- 代码的组织结构
- 代码构成
- 接口抽象定义
- 模块结合层
- 业务流程
- 具体实现
- 代码逻辑
- 出错处理
- 排除错误处理
- 数据处理
- 排除数据处理
- 重要算法
- 底层交互
- debug
- 方法
- 自顶向下
- 画图
- 逻辑归类,去除不必要部分
- debug
枯燥和大量知识
枯燥知识
- 找应用场景:实践 -> 理论
- 学习反馈
- 牛人讲解
大量知识
- 学习、思考原理性问题
- 输出、与人同行
认真阅读文档
实用技巧
- 不同方式学习
- 不要被打断
- 总结压缩信息
- 把未知关联到已知
- 用教的方式来学
- 学以致用
- 不要记忆
- 多犯错误