曾经一位开发者经过在行约我聊找工做的事情,他提到一个很典型的现象:程序员
本身对不少编程方面的知识都有了解,好比设计模式、多线程等,看书时都知道怎么回事儿,可面试时别人问到它们怎么用,却说不上来。并且,在实际编写代码时,也想不到要用它们,始终没用起来。面试
这实际上是知识的内化问题:怎样把书本上的知识,内化为本身的能力,让本身遇到合适的场景不假思索就能用起来,始终是个问题。编程
我特地回顾了本身学习编程的经验,认真思考了这个问题,找到一个将知识内化为能力的实践规律,分享给你们。设计模式
有这么4个步骤:多线程
(1)记住知识点,尤为是它的适用场景、能够解决什么问题、能带来什么价值。 好比设计模式中的工厂模式,你就要知道,它是用来解决对象建立问题的,可以把散布在代码中的对象建立代码收归一处,方便对象类别的新增、修改、扩展,也方便具体对象的建立,最终能够构建出耦合度更低的代码。框架
(2)带着知识点,观察别人怎么用它。 好比你能够带着抽象工厂模式,到你的工做代码中、到开源项目中、到知名开发框架中去找它们的影子,看看别人怎么用的。学习
(3)有意识地去找或者创造可使用知识点的典型场景,有意识地去用。 哪怕用得很生硬,也要用,好比代码中只有一种对象要建立,也能够为了练习而引入抽象工厂模式。咱们要告诉本身:我要用这个,我要用这个,我要用这个。反复重复1~3步,尤为是第3步,目的是为了在头脑中创建“知识-->场景”的映射。线程
(4)在开始新工做时,有意识地询问本身,哪里能够应用某个知识点,争取去用它。 反复如此,争取每周均可以应用那么两三次,持续一个月,就能够创建从“场景-->知识”的映射。设计
经历了这 4 个步骤后,书上学来的知识就会内化,你一看到某个知识点的适用场景,无需思考,就能够用这个知识点来解决问题。这个状态,我称之为“一触即发”。3d
特地画了一张简单的图给你们参考:
其实不单是编程知识,其余的,也同样。好比你学习RIA读书法,那就:
(1)先记住RIA的用法。
(2)看别人怎么用RIA拆书。
(3)给本身一个月时间,专门练习RIA拆书,严格遵守RIA的作法,用四色便签纸,一步一步来作。拆过20本书,你就能按照固定流程拆书了。
(4)一读书就问本身,是否是能够用RIA读书法。持续一个月。
这么下来,你确定很快会用RIA来读书。
还有不少知识,均可以参考相似的方法。
这个方法的核心,就是反复实践,提高反应速度,当咱们经过反复的、持续的、有意识的练习,作到“场景出现,不假思索,即刻应用”这种一触即发的境界,就能够说,本身把某个知识点内化了,就能够说,咱们把知识变成了本身的能力。
也只有到这个时候,咱们才能真正把知识用来解决问题。
学习C/C++编程知识,想要成为一个更加优秀的程序员,或者你学习C/C++的时候有难度,能够来笔者的C语言C++零基础编程学习圈,里面不只有学习视频和文件源码,还有更多志同道合的朋友,欢迎转行也学习编程的伙伴,和你们一块儿交流成长会比本身琢磨更快哦!