学习路线为何是无效的?

52 阅读3分钟

最近一直在学Java。得说不愧是Java,网上有很多学习资源,从hello world学到资深架构师,根本不愁学习资料,也根本学不完。其中不乏许多路线,从10天速通到源码p8。首先得承认这些路线都是很棒的学习资料,也是我重要的知识来源。但这种路线都有同样致命的缺陷,以至于任何长度的规划都鲜能有人照常走完。较好的归属也不过是给学习者一个全局视角的参考,一堆泛泛的资料。好比一个人想去旅游,那他应该数一数自己有多少钱,选一个想去的地方,买车票,订酒店,出发;而不能拿一张世界地图去旅游。

注意,这是教和学的天然困境。他人可以总结自己的知识方法来分享,这本质是教,但教会就是另外一回事了。学习者必须经过自己的模仿,练习,反馈矫正,联系扩展,而不能全然复制他人的经验,这是学习者必须自己解决的事(同时呼吁大家,多来点高质量的分享和教程吧,没有社区我可怎么活)。

以下是从一个学习者的视角思考路线类学习资料的问题,也是自学时广泛面临的问题。总结起来就一句话:学习者无法根据自己的需求找到下一步做什么,做到什么程度。即缺乏一种定位和反馈。

这只能靠自学者去主动弥补,要时刻明确自己的目的:在什么期限内达到何种程度,并自行检验所学。

编程本来就是源于实践的工程知识而非理论的科学。因此要 实践驱动:任何学习都要解决某个问题、需求。因此优质教程必备的特点即是:附有完备的练习资料和前后引导。练习资料往往是阶段性的任务,课堂作业,而且在学习之初就指出。前后引导就是本知识关联的其他知识,常见就的基础前置课和扩展资料这些,让学者发现某些知识过于困难或简单时都有自己的去处。

和上面所提到的条件相比,在知识里掺点二维码链接公众号都不算致命问题。

再谈点我自学的方法论吧:面向项目学习,资源择优而用(网上的资源太多了,这反而成了一种缺点,因为筛选难度大)。

学习路线总结起来就两条:一条主线,两条支线,再加一条隐藏路线。主线就是Java的后端技术栈:语法基础,核心类库、特性,框架,工程,底层。一条支线:数据结构与算法。另一条支线:项目实战。隐藏线:计算机基础。这也是我所理解的编程的全部。 主线是编程语言,但语言只是编程的一个切入点。在走这条主线的时候要时刻拓展支线,刷算法题,写项目,结合自己编程语言的水平从易到难地边学边练,这几条线都是相辅相成的。即使是主线,除了刚开始入门时只能慢慢过语法,一旦过完语法,后面的内容完全可以多线程地学。

这也自学的最大且唯一的问题:如何被驱动。我的回答也很明显:实践驱动。