游客发表
2019年冬天,程序我在一个外包公司赶项目,员免后端接口文档写得像天书。费自组里没人有空理我,学网搜索引擎翻了三页全是程序广告。最后在GitHub上一个不起眼的员免issue里,有人贴了MDN的费自链接。那是学网我第一次认真用MDN,也是程序第一次意识到:真正能救命的免费学习资源,往往藏在搜索结果的员免第二页之后。
MDN Web Docs(developer.mozilla.org)到现在依然是费自我查HTML、CSS、学网JavaScript细节的程序首选。它的员免优势不在于教程写得多系统,而在于每个属性、费自每个方法都有精确的浏览器兼容性表格和可运行的示例代码。你搜一个Array.prototype.flat(),它不会跟你扯一堆概念,直接告诉你参数怎么传、哪些浏览器支持、边界情况是什么。这种“查字典”式的用法,比看视频课效率高十倍。
但MDN不是万能的。如果你想系统入门一门语言,光靠查文档会迷路。这时候freeCodeCamp(freecodecamp.org)就派上用场了。它的前端课程至今仍然扎实,每个知识点后面跟着一个必须动手写代码才能过的挑战。我见过太多人收藏了几十个G的视频教程然后吃灰,但freeCodeCamp的机制逼着你敲键盘。它的中文社区虽然不算热闹,但英文论坛里提问基本两小时内有人回。缺点是课程更新速度跟不上技术迭代,React部分的内容明显偏旧,你得自己再找补充材料。
说到补充材料,不得不提The Odin Project(theodinproject.com)。这个网站有意思的地方在于,它不自己写全部教程,而是把网上最好的免费文章、视频、文档串成一条学习路径。比如它的JavaScript课程会让你先读MDN的某个章节,再去看一个YouTube视频,然后做一个项目。这种“策展式”的学习方式特别适合我这种东一榔头西一棒子的人——有人帮你把散落的珠子串成项链。不过它的项目难度不低,我卡在某个全栈项目上整整一周,最后在Discord频道里被一个拉脱维亚的开发者点醒。那种跨时区的互助感,付费课里很难体会到。
如果你已经过了入门阶段,想往深里走,CS50(cs50.harvard.edu)值得花时间。哈佛这门课免费开放全部课件和作业,讲C语言、Python、SQL、算法。David Malan的讲课风格很抓人,但真正有价值的是作业。它的作业自动评分系统会告诉你哪里错了,但不告诉你怎么改——你得自己debug。我写pset3的 runoff投票程序时,卡在排序逻辑上整整一个下午,最后发现是循环边界写反了。这种自己找 bug 的过程比看十遍教程都管用。
还有一类资源容易被忽略:GitHub上的开源项目文档。你想学Docker?别急着买课,先把docker/awesome-compose这个仓库里的示例跑一遍。想学Rust?rust-lang/rustlings这个仓库用一系列小练习带你过语法。这些仓库的README往往比付费课程更贴近实际工作场景,因为维护者就是每天在用这些技术的人。缺点是文档质量参差不齐,有些项目默认你已经会了基础操作,新手容易劝退。
免费不等于廉价。这些网站的共同点是:不给你画“三个月成为架构师”的大饼,而是把知识拆成可执行的小步骤。你得自己拼图,自己找答案,自己扛过卡住的时刻。但正是这种“不舒适”,让学到的东西真正长在脑子里。我到现在还保持着每周翻一次MDN和freeCodeCamp论坛的习惯,不是为了学新东西,就是看看别人在踩什么坑——这比任何付费社群都真实。
友情链接