Skip to content

Repository files navigation

MyLearn

一个练习工程,不是一份教程。

目标:从工具和语言基础开始,一步步走到能独立搭起一个完整的互联网应用。 路线全景见 ROADMAP.md


这个工程为谁而写

为「有工程经验,但基础是空的」这种状态而写。

典型症状:能靠 AI 把功能做出来,项目也上线过,但是——

  • 报错看不懂,第一反应是整段复制给 AI
  • 代码能跑,但说不清为什么这么写就对了
  • 换个稍微不一样的场景,又得从头问一遍
  • 心里清楚这样下去不行,但不知道该从哪儿补

这不是能力问题,是顺序问题:工具用得比原理熟,框架学得比语言早。 这个工程把顺序倒回来。


它长什么样

不是让你读文章,是让你写代码通过测试

每个练习都是这个结构:

stage-1-typescript/03-narrowing/
├── NOTES.md          ← 讲解:这个概念解决什么问题
├── exercise.ts       ← 你写代码的地方(初始是不完整的)
├── exercise.test.ts  ← 测试:它一开始是红的,你的任务是让它变绿
└── solution.ts       ← 参考答案(做完再看)

红色是起点,不是错误。 测试一开始就该失败——那是它在告诉你"还差什么"。


第一步:把代码弄到你的电脑上

你现在看到的这些文件在 GitHub 的云端仓库里。 学习要在你自己的电脑上进行,所以第一件事是把它拉下来。

完全没接触过终端 / Git / Node? 别在这里硬啃,直接去 👉 stage-0-tools/README.md 那里从"终端是什么"开始讲,一步都不跳。

已经有基础的话,三条命令:

git clone https://github.com/Renkos1/MyLearn.git
cd MyLearn
npm install

然后确认环境没问题:

npm run doctor

这条命令会逐项检查你的 Node、npm、Git、依赖装得对不对, 哪一项没过,它会直接告诉你该敲什么命令去修


日常用的命令

学习期间你主要就用这几条,不用背,忘了回来看:

命令 干什么 什么时候用
npx vitest 监听模式跑测试,改完代码自动重跑 🌟 做练习时一直开着
npx vitest 03 只跑模块 03 的测试 专注一个练习时
npm run check 类型检查(TypeScript 编译器) 想确认类型写对没
npm run doctor 环境自检 环境出问题时
npm run progress 看学习进度 想知道走到哪了

为什么有两条不同的验证命令?

这是理解 TypeScript 的第一个关键点,值得现在就说清楚:

  • npx vitest 验证的是运行时行为——你的代码跑起来,结果对不对
  • npm run check 验证的是类型——你的类型标注对不对

它们是两件独立的事。类型在代码编译成 JavaScript 时会被全部删掉, 运行时根本不存在"类型"这个东西。所以:

类型检查过了 ≠ 代码能跑对 代码跑对了 ≠ 类型写得好

两条都绿,练习才算完成。


代码是怎么更新的

这个工程的内容由 AI 助手在云端生成,推送到 GitHub 分支上。 所以当有新内容时,你在自己电脑上拉取更新:

git pull

如果你在练习文件里写了自己的代码(你应该写),拉取时可能遇到冲突。 不用慌,stage-0-tools/03-git-github.md 里专门讲了这种情况怎么处理。


一条纪律

练习卡住时,不要直接问 AI 要答案

不是因为用 AI 可耻——这个工程本身就是 AI 写的。 是因为读懂答案和写出答案是两种不同的能力,而你缺的恰好是后一种。 看到答案的那一瞬间会产生"我懂了"的感觉,那个感觉是假的。

卡住了该怎么正确地用 AI(当教练,不当代笔), 写在 👉 docs/how-to-learn.md


目录导航

路径 内容
ROADMAP.md 完整架构全景 + 三档深度分级 + 阶段规划
stage-0-tools/ 工具与环境:终端、Node、Git、编辑器
stage-1-typescript/ TypeScript 语言与类型思维(当前 MVP)
stage-2-node/ Node 运行时:事件循环、流、HTTP
docs/how-to-learn.md 学习方法:怎么摆脱"看得懂写不出"
docs/offline-learning.md 📱 不在电脑旁时学什么:书、播客、离线思考题
docs/CONTEXT.md 项目背景与决策记录(换设备/换对话时给接手者看)

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages