来自《软技能:代码之外的生存指南》,作者:约翰·Z·森梅兹。
这本书更关注程序员的职业发展、个人影响力、学习成长、生产力提升、理财、健身、精神健康等方面。
1. 了解全局
了解将要学习的主题及其全局,大致浏览一些书的目录等。
2. 确定范围
明确到底要学什么。
3. 定义目标
设定一个明确的、没有歧义的、可量化的目标,有助于快速达成效果,也更容易评估。
4. 寻找资源
尽可能通过多种渠道和方式获取更多主题相关的资料,比如书籍、项目文档、源代码、视频课程、电子书、专栏等。
5. 创建学习计划
学习计划非常重要。好的学习计划可以指出正确的学习路径,以及路径中重要的地标。参考一些优秀书籍的知识组织顺序。
6. 筛选资源
对找到的资源进行筛选,选出其中对自己最有价值的几个进行学习。去掉质量不高或者重复的内容。
7. 开始学习,浅尝辄止
这一步的目标在于先获取能够动手实践的信息。比如搭建开发环境,完成一个hello world的程序。不要急着消化所有的知识,学习的关键在于循序渐进。
8. 动手操作,边玩边学
边看边实践是更好的学习方法,在实践中发现问题,然后去解决问题,理解更彻底,收获更多。
9. 全面掌握,学以致用
在实践过程中,会不断有问题需要解决,这时需要用到收集的所有资料,或者与精通该知识的人交流。
10. 乐为人师,融会贯通
要想深入掌握一门知识,并融会贯通,学完了并教会别人,是最好方式,即所谓教学相长。在教会别人的时候,需要彻底剖析理解所学的知识,将其内化到自己的知识体系中。还要用别人能够理解的方式组织信息。这时候会发现很多知识,自己其实并没有理解的那么透彻,然后进行查漏补缺。
总结
1~6 步是学习前的准备工作,7~10是学习-实践-掌握-教授
的循环过程。