学习路线

一周学习计划:如何学完编程视频课程

更新于: · Skillaria.Top

编程视频课程的一周学习计划:每周5个学习日,每次45–90分钟,每天学1–2节新课并配有练习;每次学习开头简短复习之前的主题;一天用于巩固项目,一天休息。如果练习开始做不出来,就减少新课;如果复习的时间超过了新课,也要减量。

一周学习计划:整体框架

一个好的一周学习计划依靠三件事:每次少学一点新内容,每节课后马上练习,并按计划复习旧内容。新课只占一小部分时间,大部分时间用来亲手写代码,以及把快要忘记的内容重新拿回来。

下面的计划适合每周能投入5–8小时的人,可能是有工作或在上学的人。如果时间更多,就增加练习,而不是增加新课的数量。

星期新内容练习复习时间
周一1–2节课凭记忆写课上的代码上周总结60–90分钟
周二1–2节课自己的例子周一的主题60–90分钟
周三1节课本周的题目3–7天前的主题45–60分钟
周四1–2节课修改周一的代码周二的主题60–90分钟
周五—本周主题的小项目所有“困难”的内容60–90分钟
周六—自选回顾本周,制定计划30分钟
周日———休息

每天学多少节课

参考标准是每次学习1–2节新课。这看起来少,但每节课都需要练习和复习,合起来要一到一个半小时。如果一口气看五节课,你会有进步的感觉,却没有技能:被动观看制造理解的假象,没有主动加工,材料很快就会忘记。

一条实用的规则:在没有亲手写出上一节课的代码之前,不要开始新的一节。如果某节课很长或主题很难,就把它分成两天学。

如何分配一次学习的时间

  1. 5–10分钟:热身复习。 不看笔记,回想昨天的主题,凭记忆写出关键示例。
  2. 20–30分钟:新课。 开始前提出一个问题:我想弄清楚什么?观看时,每个语义单元之后暂停,并用自己的话复述。
  3. 20–40分钟:练习。 合上视频,自己写出讲过的代码,然后做一个你自己的例子。
  4. 5分钟:总结。 完成本节课的测试,在日志里写三行,并在日历中安排复习。

学习时段可以用番茄工作法:25分钟专注,5分钟休息或总结。

逐日安排

周一:本周开始

先用10分钟复习上周的总结:重读日志,解决一道之前觉得困难的题。然后学1–2节新课,每节之后都凭记忆写代码。周一定下节奏,所以不要安排太满:宁可以“还能再学一点”的感觉结束,也不要以疲惫收尾。

周二:新主题与自己的例子

热身是周一的主题,凭记忆完成。这是最重要的第一次复习,因为刚学完的材料忘得最快。然后学新课,练习时不是重复课上的代码,而是写自己的例子。如果这节课讲的是类,就为自己的领域创建一个类:书籍、订单、训练记录。

周三:轻松的一天

学一节课,多做练习。周三很适合复习上周的主题,它们正好过了3–7天。解决一道需要用到某个技巧、但题目里没有直接点明的题。周中有一个轻松的日子,可以降低职业倦怠的风险。

周四:修改

拿周一写的代码来改:改变条件,改变数据,或者增加错误处理。这是间隔复习的第二阶段:检验理解,而不是机械记忆。然后按平常的方式学1–2节新课。

周五:小项目

不学新课。写一个小程序,把本周的主题结合在一起。比如学完了文件、字典和函数这一周,就可以写一个脚本,读取一个文本文件并输出出现最多的词。项目会显示知识之间哪些地方对不上,这是一周里最有价值的信息。

def top_words(path, n=10):
    counts = {}
    with open(path, encoding="utf-8") as f:
        for line in f:
            for word in line.lower().split():
                counts[word] = counts.get(word, 0) + 1
    return sorted(counts.items(), key=lambda kv: kv[1], reverse=True)[:n]

周六:回顾与计划

30分钟。重读本周的日志,标出造成困难的主题,并安排它们的复习。制定下周的计划:学哪些课,做哪些题,什么时候做项目。如果想多学,就做题,而不是看新课。

周日:休息

完整的休息是计划的一部分,而不是软弱的表现。大脑需要时间消化材料,而你需要时间,让学习不变成一种负担。

什么时候复习

复习已经嵌入每次学习的热身环节中,几乎不需要单独的时间。整体逻辑是间隔的:主题会在一天、几天、一周和两三周之后被再次回顾。

主题的时间复习形式
1天凭记忆复现代码和要点
3天修改代码,解决相似的题
一周新题,或在小项目中使用
2–3周快速检验:测试,用自己的话解释

把相关的主题放在一起复习:循环和列表,Git 中的分支和合并,SQL 中的 JOIN 和分组。这样概念之间会形成联系,材料就会作为一个系统被记住,而不是零散的事实。

什么时候练习

简短的回答是:每天,并且在每节课之后马上练习。只有理论而没有练习,形成不了技能:你可以背下所有交通规则,却依然不会开车。计划中的练习分三个层次:

  • 每天:凭记忆写课上的代码,并做一个自己的例子。
  • 每周2–3次:不看提示,解决前几天主题的题。
  • 每周一次:一个综合了多个主题的小项目。

如果没有足够的时间练习,就减少新课,而不是减少练习。

如何判断该休息了

如果你同时注意到以下几种迹象,就应该减轻负担:

  • 新课刚看完,你甚至连它的要点都说不出来。
  • 以前能解的简单题,现在做不出来了。
  • 热身复习花的时间比新课还多:说明新内容的学习速度超过了巩固的速度。
  • 你发现自己每隔几分钟就想拿起手机。
  • 连续好几天都得逼自己去学习。

应对方法:一周内先停掉新课,只保留复习和练习;或者把学习时间减半。这不是倒退,而是让已学内容稳固下来的时间。每个月一两次的轻松周,能帮你不中断地把课程学完。

如何根据自己的情况调整计划

  • 时间少(每周3–4小时)。 三次学习:两次各学一节新课并练习,一次复习和小练习。
  • 时间多(10小时以上)。 增加练习和项目,新课仍保持每天2节左右。
  • 只在周末学。 至少在工作日安排每次15分钟的简短复习,否则到周六很多内容都会忘掉。
  • 漏掉了一天。 不要把任务加倍,只需把计划顺延。连续漏两天,就是该减少计划的信号。

示例:Python 课程的一周,主题是函数

为了让计划不停留在抽象层面,下面看看它在具体内容上是什么样子。假设这一周课程有四节课:函数与参数、返回值、作用域、匿名函数(lambda)。

  • 周一。 热身:用上周的循环写一道题。学“函数与参数”,然后凭记忆写一个计算列表平均值的函数。自己的例子:一个格式化姓名的函数。
  • 周二。 热身:不看提示,再写一遍平均值函数。学“返回值”。练习:写一个同时返回列表最小值和最大值的函数。
  • 周三。 学“作用域”。复习上周的题:处理字符串列表,但这次用函数来组织代码。
  • 周四。 修改周一的代码:平均值函数要能正确处理空列表。学“匿名函数”,练习:用 key=lambda 按字段对字典列表排序。
  • 周五。 小项目:统计文件中的高频词,每一部分都是一个单独的函数。
  • 周六。 回顾:日志中三次出现“作用域搞不清”,说明这个主题要安排到周二和下下周六的复习中。

注意:这一周只学了四节新课,但每一节都至少练习了两遍,并且用到了项目中。正是这样的一周,带来的是技能,而不是一串看过的视频列表。

制定计划时的常见错误

  • 计划的是课,而不是行动。 “看十节课”很容易完成,却学不到什么。应该计划的是任务:写、解、组装。
  • 没有留余地。 计划排得满满的,第一个忙碌的星期就会崩溃。计划的量应比你觉得能做到的少三分之一。
  • 为了速度砍掉复习。 新主题建立在旧主题之上,没有复习,每一周都会比上一周更难。
  • 放弃休息日。 没有休息,兴趣消失得比技能增长还快。

总结

编程视频课程的一周学习计划:每次学习1–2节新课,每节课后马上练习,每次开头用热身复习旧内容,周五做一个小项目,周六回顾,周日休息。当复习赶不上新内容,或者练习开始做不出来时,就是该休息的信号。这份计划背后的原理,在《如何高效学习视频课程》的课程中有详细讲解。

常见问题

新手每周学编程需要多少小时?

要稳定进步,每周5–8小时、分成4–5次学习就够了。规律比时长更重要:每天的短时段比一次长时间更有效。

可以每天学编程、不休息吗?

可以用短时段,但每周至少休息一天,能避免疲劳,保持兴趣。过度学习通常会以放弃课程告终。

一节课太难,一天学不完怎么办?

按语义单元把它分成几部分,每次学一部分,学完就练习。只有当你能自己写出上一部分的代码时,才开始下一部分。

课程里已经有题目了,还需要做项目吗?

最好做。题目练习的是单个主题,而小项目能展示这些主题如何协同工作,并暴露题目发现不了的漏洞。

通过视频学习本主题

课程“如何通过视频课程有效学习”结合实践详细讲解了这一主题。

前往课程