Tutorials 项目完全指南:一个开源仓库学透 HTML、Go、Docker 与智能家居 4 大技术栈
【免费下载链接】tutorialsSource code from Jake Wright's YouTube tutorials项目地址: https://gitcode.com/gh_mirrors/tutorials5/tutorials
Tutorials是开发者 Jake Wright 配套 YouTube 视频整理的开源教程仓库,用「每个知识点一个可运行示例」的方式,带你从零掌握 HTML 网页开发、Go 语言与并发编程、Docker 容器化部署,以及用 Go、Python、Node.js 混合搭建的智能家居控制系统。一个仓库,四条学习路径,新手友好,是自学全栈技术的宝藏起点。
📦 仓库结构一览
仓库按技术栈划分为 4 个顶层目录,学习路径清晰:
| 目录 | 技术栈 | 内容 |
|---|---|---|
html/ | HTML | 12 分钟 HTML 入门网页 |
go/ | Go | 语言基础 + 并发编程 |
docker/ | Docker | 镜像、Compose、部署 |
home-automation/ | 全栈 | 智能家居三阶段实战 |
🌐 HTML 入门:12 分钟看懂网页结构
HTML 部分位于html/01-learn-html/,包含两份对照网页:
- webpage.html —— 视频中的经典 HTML 4 页面
- webpage-html5.html —— 升级为 HTML5 标准的同页面
对照两者能直观看到 HTML5 的三个关键变化:文档类型声明改为<!DOCTYPE html>、<br />等标签不再自闭合、<img>必须带alt替代文本。对零基础读者来说,这是理解网页「骨架」最快的方式。
🚀 Go 语言:从 Hello World 到并发编程
Go 教程分两个阶段,共 14 个示例文件,全部位于go/目录。
第一阶段:语言基础(go/01-learn-go/)
9 个文件循序渐进,每个文件只讲一个知识点:
01-hello-world.go—— 第一个 Go 程序02-variables.go—— 变量声明03-if.go—— 条件判断04-arrays.go—— 数组05-maps.go—— 映射06-loops.go—— 循环07-functions.go—— 函数08-struct.go—— 结构体09-pointers.go—— 指针
第二阶段:并发编程(go/02-go-concurrency/)
Go 的杀手锏——并发,用 5 个示例讲透:
| 示例 | 知识点 |
|---|---|
01-goroutine.go | 轻量级协程 |
02-wait-group.go | WaitGroup 同步等待 |
03-channels.go | channel 通信(数羊经典示例) |
04-select.go | select 多路复用 |
05-fib.go | 用并发计算斐波那契 |
💡 小技巧:每个文件都可以直接用
go run 文件名运行,即时看到输出,学习反馈极快。
🐳 Docker 容器化:三步走完全路径
docker/目录对应三集「12 分钟」视频,难度递进:
第一步:初识 Docker(docker/01-getting-started/)
最简 Dockerfile 示例:把 src/index.php 打包成镜像并运行容器,理解「镜像 + 容器」核心概念。
第二步:Docker Compose 编排(docker/02-docker-compose/)
一个模拟电商的两容器应用:
product/api.py—— Python 编写的商品 API 服务website/index.php—— PHP 前端页面
通过 docker-compose.yml 定义服务依赖关系,一条docker-compose up命令拉起整套应用。
第三步:生产部署(docker/03-deployment/)
在上一阶段基础上增加前端独立镜像与 stackfile.example.yaml,演示如何用 Docker Stack 方式部署多服务应用,贴近真实生产流程。
🏠 智能家居实战:用 3 种语言搭一个 Hue 灯光系统
home-automation/是仓库的「毕业设计」,分三个阶段把一个能控制 Philips Hue 灯光的系统做出来:
阶段一:设备注册服务(Python)
home-automation/02-device-registry/用 Flask 实现设备注册 REST API:支持列出设备(GET /devices)、注册设备、按标识查询、删除设备,数据存入 SQLite,完整接口文档见同目录 README.md。
阶段二:配置服务(Go)
home-automation/03-config/展示了经典的 Go 分层架构:
- main.go —— 入口,注册路由
- controller/controller.go —— 控制器层
- domain/config.go —— 领域模型
- service/service.go —— 服务层(含配置热更新监听)
- config.yaml —— 外部化配置
阶段三:Hue 灯光控制(Node.js + 多服务编排)
home-automation/04-hue-lights/把系统扩展为 3 个微服务,分别用 Go、Python、Node.js 编写:
| 服务 | 语言 | 职责 |
|---|---|---|
service.config | Go | 配置管理与热更新 |
service.registry.device | Python | 设备注册中心 |
service.controller.hue | Node.js | Hue 灯光控制(api/hueClient.js) |
最终通过 docker-compose.yml 将三个服务编排在一起,端口分别为 7000、7001、7003。这个项目把前面学到的 Go、Python 与 Docker 技能全部串了起来,是绝佳的综合练习。
🛠️ 如何快速上手
克隆仓库到本地:
git clone https://gitcode.com/gh_mirrors/tutorials5/tutorials推荐学习顺序:
- 先打开网页:用浏览器查看
html/01-learn-html/下的两个页面 - 再跑 Go:
go run go/01-learn-go/01-hello-world.go,逐文件推进 - 然后容器化:安装 Docker 后进入
docker/02-docker-compose/执行docker-compose up - 最后大综合:按阶段推进
home-automation/,体验完整的项目工程
✅ 总结
Tutorials 仓库的最大价值在于「小而全」:HTML 打基础、Go 练语法、Docker 学部署、智能家居做综合,四步走完就是一条完整的全栈学习路线。每个目录都小到可以一眼看完,又大到足够真实,非常适合作为新手的第一批动手项目。祝学习顺利!🎉
【免费下载链接】tutorialsSource code from Jake Wright's YouTube tutorials项目地址: https://gitcode.com/gh_mirrors/tutorials5/tutorials
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考