先说结论:入门只需要三样东西
免费编程学习入门真正需要的,不是一份更长的网站清单,而是一套能闭环的组合:一份能从头读到尾的系统教程、一个随时能运行代码的环境、一个必须交付出去的小项目。 三者缺一,学习就会停在「看懂了但写不出」的状态。

这个结论听起来简单,但它能解释一个常见现象:很多人收藏了几十个免费教程站,学了半年还在第一章。问题不在于资源不够,而在于资源之间没有顺序——今天看 Python 视频,明天翻前端文档,每个都开了头,没有一个走到能跑起来的那一步。
免费资源的真实优势是试错成本为零,你可以用两周时间判断自己是否真的喜欢写代码,而不必先付一笔学费。劣势也很明确:没有人为你排顺序、没有作业、没有答疑、没有截止日期。所以自学的核心工作,其实是给自己补上这四件事,而不是继续找资料。
下面的入口都经过实际访问确认可以打开,全部可以免费注册使用。凡是需要付费才能拿到核心内容的地方,我会直接标明,不夸大免费范围。
免费学习入口对照表
| 入口 | 网址 | 适合阶段 | 特点与局限 |
|---|---|---|---|
| freeCodeCamp 中文站 | chinese.freecodecamp.org | 零基础到进阶 | 课程按认证分块,边学边在浏览器里写代码,练习强制动手;部分课程为英文原版翻译,语序偶有生硬 |
| 菜鸟教程 | www.runoob.com | 语法速查 | 中文教程覆盖面广,示例可在线运行;内容偏「查」而非「学」,缺少项目与练习设计 |
| MDN Web 文档 | developer.mozilla.org/zh-CN | 前端与 Web 基础 | HTML、CSS、JavaScript 的权威参考,带学习区;文档体量大,零基础直接读容易迷路 |
| 中国大学 MOOC | www.icourse163.org | 想跟老师节奏 | 高校教师授课,有作业与讨论区;旁听免费,部分课程的认证证书需要付费 |
| 廖雪峰的官方网站 | www.liaoxuefeng.com | 系统读一遍 | Python、JavaScript、Java、Git 教程成体系,行文连贯;更新节奏不快,个别示例版本偏旧 |
| B 站 | www.bilibili.com | 补充理解 | 视频讲解直观,适合卡住时换个说法听一遍;质量差异极大,必须自己筛 |
| GitHub | github.com | 找项目练手 | 大量开源项目与学习路线图;界面与文档以英文为主 |
这张表的使用方式不是「全都看」,而是选一条主干加一个备用。比较稳的组合是:以 freeCodeCamp 或廖雪峰的教程做主干,卡住时用 B 站视频换一种讲法,需要查具体语法时开菜鸟教程或 MDN。三个入口各司其职,不要同时开五个。
一个容易被忽略的细节:这些站的免费范围并不相同。freeCodeCamp 的课程与认证本身不收费,靠捐赠维持;中国大学 MOOC 的课程视频可以免费看,但证书、部分测验要付费;菜鸟教程全站免费,代价是页面广告较多。免费不等于没有成本,你的成本是时间与注意力,所以入口越少越好。
零基础四阶段路线
阶段一:环境与语法,两到四周
目标是能独立写出五十行以内、能跑通的小脚本。具体动作只有三个:装好编辑器(VS Code 即可,免费)、装好语言运行环境、把变量、判断、循环、函数、列表与字典这五样练到不用查。
这一阶段最有效的习惯是每看十分钟就动手敲一次。视频看懂和手能写出来是两件完全不同的事,中间的差距只能靠重复敲代码填平。建议每天固定三十到六十分钟,时间短但不断,比周末突击六小时更有效。
判断是否可以进入下一阶段的标准很具体:给一个「统计一段文字里每个字出现的次数」的需求,你能不看教程写出来,就可以往下走。
阶段二:小项目闭环,三到六周
这一阶段要解决的是「会语法但不会做事」。挑三个规模递增的小项目,每个都必须有可运行的结果:
- 命令行小工具:批量重命名文件、按规则整理下载目录、把 CSV 里的某几列挑出来另存
- 数据处理脚本:读一份表格,做汇总统计,输出一张新表或一张图
- 一个能打开的小页面:静态网页即可,重点是搞清 HTML 结构、CSS 布局与一点点交互
做项目的过程中会第一次遇到真正的痛点:报错看不懂、路径写错、编码乱码、依赖装不上。这些问题的解决过程才是入门的主体,比任何一章语法都值钱。遇到报错时按三步走:读最后一行错误信息、搜索错误关键词加语言名、把代码缩到最小可复现的一段再试。
阶段三:工程习惯,四到八周
能写出跑得通的代码,离「能被别人接手」还差一段。这一段补的是工具链:
- Git 与 GitHub:会提交、会看差异、会回退,把自己写的项目传上去
- 虚拟环境与依赖管理:Python 用 venv,前端用 npm,理解「为什么我的电脑能跑别人的不能」
- 代码规范与命名:变量名说人话,函数只做一件事
- 单元测试基础:知道测试是干什么的,能写几个最简单的断言
这一段最枯燥,也最容易跳过,但它决定了你后面是「一直在写练习」还是「能改真实项目」。判断标准:别人把你的仓库拉下来,按 README 能跑起来。
阶段四:方向分流,按目标选
到这个阶段,「免费编程学习入门」这件事本身已经完成,接下来是选方向。方向不同,要补的知识差别很大,硬啃全套只会浪费时间。分流的原则是先看你想做出什么东西,再看那个东西需要什么技术,而不是先看哪个语言热门。
按目标分流的语言选择
| 想做的事 | 主要语言 | 还需要补 | 说明 |
|---|---|---|---|
| 数据统计、报表自动化 | Python | pandas、Excel 操作 | 语法友好,库生态成熟,非科班最容易上手 |
| 做网站前端 | JavaScript | HTML、CSS、框架 | 浏览器里直接能跑,反馈最快 |
| 做网站后端 | Python、Java、Go | 数据库、接口设计 | 三者都能做,按目标公司的技术栈选更实际 |
| 数据分析与取数 | SQL + Python | 数据库基础 | SQL 不是编程语言,但绕不开,越早学越好 |
| 测试与自动化 | Python、JavaScript | 测试框架 | 入门门槛低,适合先就业再深入 |
| 嵌入式、单片机 | C | 硬件基础 | 学习曲线陡,但方向明确 |
这里有一个常被混淆的概念:「学语言」和「学编程」不是一回事。语言只是表达工具,真正迁移的是分解问题、抽象数据结构、调试推理的能力。所以不必纠结「Python 和 Java 哪个更有前途」,先用手边这门把三个项目做完,换语言的成本远低于你的想象。
另一个常见误解是把 SQL 当成可选项。实际工作中,无论做后端、数据分析还是运营支持,取数几乎都绕不开 SQL,而它的学习成本只有语言的三分之一。先花两周把 SQL 的基本查询、聚合、多表连接练熟,性价比高于再学一门新语言。
常见问题
零基础应该先学哪门语言? 如果没有明确目标,从 Python 开始最省心:语法接近自然语言,报错信息清楚,装上就能跑,而且能顺手处理表格和文件,学两周就有实际产出。如果目标明确是做网页,直接从 HTML、CSS、JavaScript 起步更快,不必绕道 Python。
只用免费资源,能学到什么程度? 免费资源足以覆盖从零到能独立完成中小项目的全过程,语法、文档、练习、开源项目都不缺。免费资源真正缺的是节奏与答疑:没人给你布置作业、没人检查你的代码、卡住时没人直接告诉你哪里错了。自律强的人可以完全靠免费资源走完全程,容易放弃的人需要的其实是外部约束,而不是更贵的课程。
每天学多久比较合适,多久能找到工作? 每天一到两小时、每周至少五天,是能持续且有效的强度。至于多久能找工作,取决于方向、项目质量与所在城市的岗位竞争,任何给出确定月份的说法都不值得信。比较实际的判断标准是:你是否有三个能讲清设计取舍的项目,以及能否在没有人提示的情况下读懂一段陌生代码。
英语不好能学编程吗? 能。中文教程和中文文档已经覆盖了入门所需的绝大部分内容,国内的社区也足够活跃。但要接受一个长期成本:最新的文档、报错信息、开源项目说明大多是英文,越往后走,阅读英文资料的比例越高。入门阶段不必专门补英语,可以边学边积累技术词汇,这比背单词书有效。
学到什么程度算入门了? 一个可操作的判断:给定一个不太复杂的需求,你能自己拆成步骤、查文档解决其中的陌生部分、写出能跑的代码,并且知道怎么验证它是对的。做不到这四点,说明还在「跟着教程走」的阶段,需要多做项目而不是多看教程。
避坑:三类「假免费」
第一类是「零元学」训练营。 前几天免费,讲到关键处开始推正式课,价格在直播间里一路往下掉。这类课程本身未必是骗局,但它的商业模式决定了它的目标是转化而不是教会你。判断方法很简单:看它是否愿意在免费阶段就把完整的学习路线和练习给你,如果免费内容全是「引子」,后面必然要付费。
第二类是「免费领取全套视频」的引流。 要求关注公众号、加微信、转发朋友圈才能领取。领到的东西往往是几年前的录屏,画质模糊、代码跑不通,附带一堆网盘广告。真正的免费课程通常直接放在公开站点上,不需要你做任何交换。
第三类是盗版课程包与「破解版」工具。 这类资源除了内容过时,更大的风险是捆绑安装包与恶意脚本。学习用的编辑器、语言环境、数据库全部有官方免费版本,没有任何理由去下载来路不明的安装包。
还有一条容易被忽略:「免费证书」不等于就业背书。很多平台完成课程会发一张电子证书,它对求职的实际帮助有限,面试官更想看你的项目仓库和代码。把时间投在做项目上,回报远高于刷证书。
最后提醒一句:不要用「收藏」代替「学习」。看到好教程先存下来是人之常情,但存满一个文件夹之后你会发现,真正让你进步的是那三个咬牙做完的小项目,而不是那三十个收藏夹里的链接。
