本项目是一个学习记录仓库,主要内容包括面试相关八股/算法、面经、实习记录、前后端项目、计算机基础知识和我个人的碎碎念/反思总结
可访问 https://qingverse.com 获得更佳阅读体验
- 前端:Next.js 16(App Router、Tailwind),输出 standalone 运行产物
- 后端:Go + chi,Swagger 文档 /health /api/* 接口
- 数据:MySQL 8(容器)
- 反代:Caddy(容器),将
/api转发到 API,静态资源由 web 容器提供 - 部署:Docker Compose(deploy/),GitHub Actions 自动构建推送镜像并 SSH 部署
- Node 22、npm workspaces
- Go 1.24
- Docker / Docker Compose v2
- Caddy 2
- GitHub Actions、ACR(或任意容器仓库)
- 已安装并运行 Docker / Docker Desktop,带 Compose v2
- Node 22 + npm 10(根目录
npm install) - Go 1.24(本地开发 API 用)
- 可用的 3306 端口(本地 MySQL 容器)
.
├ apps/
│ ├ api/ # Go API
│ └ web/ # Next.js 前端
├ content/ # Markdown 笔记/文章
├ deploy/ # 服务器部署用 compose + Caddy
└ scripts/ # 辅助脚本
如果你的 Mac 还没有安装开发工具,按以下步骤操作:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"安装完成后,按提示运行:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"# 安装 Node.js 22(包含 npm)
brew install node@22
# 添加到 PATH(如果需要)
echo 'export PATH="/opt/homebrew/opt/node@22/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
# 验证安装
node -v # 应显示 v22.x.x
npm -v # 应显示 10.x.x
# 安装 Go
brew install go
# 验证
go version # 应显示 go1.24.x从 Docker 官网 下载并安装 Docker Desktop for Mac。
# 克隆项目
git clone git@github.com:EthanQC/my-learning-record.git
cd my-learning-record
# 安装前端依赖(在项目根目录)
npm install若本地 docker 无镜像/已运行容器,会自动新建,默认用户密码为 root:pass
cd apps/api
make docker-up # 启动 MySQL 容器
cd ../..# 复制环境变量示例文件
cp apps/api/.env.example apps/api/.env
cp apps/web/.env.local.example apps/web/.env.local后端:
cd apps/api
go run cmd/server/main.go前端:
cd apps/web
npm run dev# 同时启动前端 + 后端(后端会执行 make dev,需要已安装 swag 与 docker)
npm run dev
# 仅前端
npm run dev:web
# 仅后端(等价于 make -C apps/api dev)
npm run dev:api
# 统一修复/补齐 frontmatter
npm run fix:frontmatter- 前端:http://localhost:3000
- 后端健康检查:http://localhost:9000/health
- Swagger 文档:http://localhost:9000/swagger/index.html
服务器仅使用 deploy/ 目录,请先安装 Docker 与 Compose v2
推荐使用阿里云 ACR 作为镜像仓库
修改镜像仓库、实际域名和数据库等信息
cd ~/workspace/my-learning-record/deploy
cp .env.example .envGitHub 仓库中 Secrets 配置路径:
Settings —— Security —— Secrets and variables —— Actions —— Repository secrets
点击 New repository secret,逐个添加变量名和内容,推荐在 vs code 中安装 GitHub Actions 官方扩展
- Workflow:
.github/workflows/deploy.yml - 需要的 Secrets
- ACR:
ACR_REGISTRYACR_NAMESPACEACR_USERNAMEACR_PASSWORD
- SERVER:
SERVER_HOSTSERVER_USERSERVER_PORTSERVER_SSH_KEY
- ACR:
- 流程:
- 构建并推送镜像
- SSH 到服务器写入
.env的API_TAG/WEB_TAG docker compose pull/up- 重启 caddy
我会在这里记录我每天(perhaps🤪)的学习内容,包括但不限于:
- cpp、go、操作系统、计网、数据结构与算法、后端、前端相关的知识点
- 一些小练习小项目
- 在学习过程中遇到的一些问题/疑惑
- 碎碎念(是的我的分享欲挺高的👉👈)
- 我搜集到的各种我认为好用的学习资源
记录的初衷还是因为前段时间看到了这样一段话:
“关于如何学习编程,我觉得没啥可分享的技巧。只要自己有基本的学习能力,会分析抽象问题,编程(简单粗暴看文档,跟着写)就是一个水到渠成的事情。代码或工具也只是将解决问题的逻辑进行具象化,并没有什么神奇之处。
另外,兴趣往往更容易推着你去了解学习一些未知新事物。所以学编程还是应以解决问题为出发点。举个简单例子:我想租房,要找一个最具性价比的房子。这时你就可以写个简单的爬虫来做数据分析,或者你想对文件进行批量化读写操作,也可以写个程序脚本来解决。
对不知从什么项目入门的人,我都推荐搭建一个属于自己的 blog,因为它是一个可以伴随自己整个编程生涯的东西,可以不断对其进行功能迭代。例如:通过 GitHub 来搭建一个开源 blog,然后不断为其添加新功能。这里面你可以学到很多东西(如 github action、git、markdown、github api,域名绑定等)。
编程的本质:以问题为导向去了解学习所需技术或工具,通过观察分析抽象来建立标准化流程以解决重复性问题。”
最开始胡乱记了两个月之后,我又发现还是要弄一个方便自己翻阅的笔记,所以才有了这个仓库现在的样子:知识,碎碎念,还有一些反思总结,既能看看自己来时的路,也能及时调整规划什么的
目前还在建设中,正在慢慢完善,我心中它最后的样子应该是一本能快速索引的字典,并且知识的记录能尽量简洁易懂,同时包含如何实际应用,当然,还要有一些练习
如果你觉得这个仓库在某个方面帮助到了你,对你来说是有一些作用的,那么不妨给个 star 吧~💕
如果你想跟我一起完善这个仓库,添加更多内容(不局限于我自己的技术栈),欢迎发起 pull request,也欢迎添加我的微信 13537821092 跟我交流~😉
(后续我可能会出一个贡献模板)
整体的职业规划还是主 go 后端、副 cpp / ue5 客户端
九月底入职了一家做具身智能的初创中小厂,九月份一直在海投面试但发现自己还是太菜了,没能顺利进入大厂,就借着这段工作再好好沉淀一下,准备在十二月再次开始海投并辞职
近期的几条线
- 找新实习准备
- 刷、复习算法题
- 一刷代码随想录和 hot100 已结束,目前刷题数 201
- 马上开始二刷代码随想录和 hot100
- sql 题和一些新题库(如剑指 offer 什么的)准备排上日程
- 整理、复习八股
- go
- 操作系统
- 计网
- 数据库
- 云原生/微服务/分布式
- 改简历
- 刷、复习算法题
- 项目
- cpp(阶段性搁置)
- HTTP 服务框架
- 分布式存储
- go
- IM(重构有点头疼)
- 分布式缓存
- 大创项目(较多需补充)
- 清华项目(较多需补充)
- 游戏(阶段性搁置)
- 月华
- 逆时巫师
- cpp(阶段性搁置)
(standard template library,标准模板库)
<map/multimap/unordered_map(待整理)>
(待整理)
(待整理)
(待整理)
(待整理)
(待整理)
(待整理)
(待整理)
(待整理)
题目编号为 leetcode 上的题目编号
<python、Shell、Perl 等脚本语言(待整理)>
(待整理)
(待整理)
前端组件化、模块化以及常见的状态管理方案(Redux / Vuex 等),性能优化(待整理) Node.js、jQuery 等常见框架或库,相应的扩展编写(待整理)
(待整理)
待整理
- 虚幻五 ⭐⭐⭐
- UE5 的项目架构与工作流程,使用 C++ 和 Blueprints 进行游戏逻辑开发
- 虚幻引擎关键模块,如 Actor、Pawn、GameMode、Controller、Gameplay Framework 等,Unreal 构件的生命周期与事件驱动机制等
- 虚幻引擎的 Chaos 物理系统、动画系统(Anim Blueprint、状态机、IK 技术)、AI 系统(Behavior Tree、Blackboard、NavMesh 等)、多线程架构等
- UE5 中的 Lumen、Nanite 等新特性,渲染管线和 Shader 编写方法
- 图形学 ⭐⭐
- 基础的 3D 数学和渲染管线理论,光照模型、材质系统、纹理映射与贴图、3D模型与网络、性能优化与渲染技巧、后期处理等图形学概念
- 根据需求调试渲染效果,常见的渲染优化手段(如批次合并、LOD、延迟渲染等)
- DLSS 等现代技术