来自《软技能:代码之外的生存指南》,作者:约翰·Z·森梅兹。

这本书更关注程序员的职业发展、个人影响力、学习成长、生产力提升、理财、健身、精神健康等方面。

1. 了解全局

了解将要学习的主题及其全局,大致浏览一些书的目录等。

2. 确定范围

明确到底要学什么。

3. 定义目标

设定一个明确的、没有歧义的、可量化的目标,有助于快速达成效果,也更容易评估。

4. 寻找资源

尽可能通过多种渠道和方式获取更多主题相关的资料,比如书籍、项目文档、源代码、视频课程、电子书、专栏等。

5. 创建学习计划

学习计划非常重要。好的学习计划可以指出正确的学习路径,以及路径中重要的地标。参考一些优秀书籍的知识组织顺序。

6. 筛选资源

对找到的资源进行筛选,选出其中对自己最有价值的几个进行学习。去掉质量不高或者重复的内容。

7. 开始学习,浅尝辄止

这一步的目标在于先获取能够动手实践的信息。比如搭建开发环境,完成一个hello world的程序。不要急着消化所有的知识,学习的关键在于循序渐进。

8. 动手操作,边玩边学

边看边实践是更好的学习方法,在实践中发现问题,然后去解决问题,理解更彻底,收获更多。

9. 全面掌握,学以致用

在实践过程中,会不断有问题需要解决,这时需要用到收集的所有资料,或者与精通该知识的人交流。

10. 乐为人师,融会贯通

要想深入掌握一门知识,并融会贯通,学完了并教会别人,是最好方式,即所谓教学相长。在教会别人的时候,需要彻底剖析理解所学的知识,将其内化到自己的知识体系中。还要用别人能够理解的方式组织信息。这时候会发现很多知识,自己其实并没有理解的那么透彻,然后进行查漏补缺。

总结

1~6 步是学习前的准备工作,7~10是学习-实践-掌握-教授的循环过程。