C++ / Golang / 游戏开发 / TA 学习路线汇总
Contents
C++
一篇文章学完 Effective Modern C++:条款 & 实践。
CPU的核心数和线程数量是什么关系? - texttime vage的回答 - 知乎。
合集·现代 C++ 语言核心特性解析。
现代 C++ 教程:高速上手 C++ 11/14/17/20。
小鹏的教程:合集·现代C++项目实战。
校招C++大概学习到什么程度? - 程序员内功修炼的回答 - 知乎。八股文组合拳。
陈皓(左耳朵耗子)的一些博客:
C++ 虚函数表解析。
C++ 对象的内存布局(上)。
跟我一起写 Makefile(一)。
TCP 的那些事儿(上)。
C++那些事 CPlusPlusThings。
C++那些事 中文。
如何成为linux服务端C++开发专家? - 不谙世事的吴同学的回答 - 知乎。
c++17 多态内存资源(PMR)。
内存管理:设计Arena。
这本书加深了我对C++的理解 | C++ Core Guidelines解析。
为什么C/C++等少数编程语言要区分左右值? - 腾讯技术工程的回答 - 知乎。非常牛逼。讲得很深,从C语言的发展、寄存器讲起。
从操作系统内存管理来说,malloc申请一块内存的背后原理是什么? - 编程指北的回答 - 知乎。
深入理解程序的结构。
快速理解 .bss
、.data
和.rodata
。
bss,data,text,rodata,堆,栈,常量段。
有哪些优秀的 C/C++ 开源代码框架?这些框架的设计思路是怎样的? - 南山烟雨珠江潮的回答 - 知乎。
C++内存模型:从C++11到C++23 - Alex Dathskovsky - CppCon 2023。
项目 / 库
webserver面试题汇总。
从面试角度重新看c++11的Webserver。
linux服务器编程:从epoll升级到io_uring。 Swoole v6 将引入 Linux io_uring ,并发读写文件性能提升了 5 倍。
知名开源小线程池:thread-pool。
基于C++11实现线程池 - Skykey的文章 - 知乎。
C++项目:如何找合适的C++项目给自己的简历加分? - 大糖的回答 - 知乎。
游双《Linux高性能服务器》springsnail(一个简易的四层负载均衡服务器,只提供least connection最小连接数算法,以进程池提供原动力)、LVS(linux virtual server,一个成熟的四层负载均衡服务器,提供了3种工作模式和10种负载均衡算法等等)
C++Linux进阶项目分析-仿写Redis之Qedis,深入掌握C++Linux必备的Redis技术栈。
vectorDB:有什么高质量c++练手项目推荐嘛? - zlatan的回答 - 知乎。
雅兰亭库, 是一个非常现代的c++库(阿里写的), 除了反射 还有协程库、RPC库…
Linux C++项目推荐:WebFileServer文件服务器+如何快速上手C++大项目。
三个比较小的C++项目与简历内容 - 严格鸽的文章 - 知乎。json解析器,跳表,线程池。
workspace是基于C++11的轻量级异步执行框架。一个开源的线程池。
这是前身的教程:01 Hipe_C++线程池框架_简介(更新)。
面经
百度面经。C++ 找工作校招需要掌握到什么程度? - 阿biu的回答 - 知乎。
腾讯一面:malloc是如何分配内存的,free怎么知道该释放多少内存?。
字节一面:TCP 和 UDP 可以使用同一个端口吗? - 小林coding的回答 - 知乎。
字节一面:TCP 和 UDP 可以使用同一个端口吗? - 车小胖的回答 - 知乎。一些非常刁钻的面试题。答案是可以,有点意外。
腾讯面试:那些腾讯面试过的MySQL场景问题 - 王中阳讲编程的文章 - 知乎。
C++面试题个人总结(2023-5)。里面有一些听说不准确。
数学/算法
你还不懂ZIP压缩的原理?一条视频讲清楚ZIP算法中的LZ77编码。
哈夫曼编码很难懂?一条视频讲清楚。
JPEG 有损压缩 离散余弦变换 DCT 一条视频讲清楚。
底层 / 四大件
HPC(高性能计算第一篇):一文彻底搞懂并发编程与内存屏障。
基础软件开发新坑 – 神秘的MESI和坑爹的LockFree(一)。
MIT 6.033 Spring 2021: Computer System 计算机系统。
讲得很清晰的计网概述:详细剖析分布式微服务架构下网络通信的底层实现原理(图解)。
【合集】MIT 6.828: Operating System Engineering [Fall 2014] (无字幕)。
我想写一个demo级别的编译器,我是该用C语言实现还是用nodejs实现? - 南山烟雨珠江潮的回答 - 知乎。南山对编译器入门的推荐。
深入理解Linux的TCP三次握手。
从Linux系统函数角度,讲得比较深。
一口气搞懂【Linux内存管理】,就靠这60张图、59个问题了。
Go
uber出的go的指南guide。
【Go手写RPC框架】。
如何在go语言中实现高并发的RPC框架。
有没有推荐的golang的练手项目? - 极客兔兔的回答 - 知乎。
使用Golang实现Tcp反向代理服务器。
使用Golang实现内网端口映射。
godis。Go 语言实现的 Redis 服务器和分布式集群。
nes,这是一个用Golang编写的NES模拟器。可以看到如何用Golang编写一个模拟器,以及如何用Go模拟CPU和GPU。
面试别再商城项目博客项目啦!双非学员用【分布式AI微服务Golang项目】已经上岸了!。
数据库
课程:Redis - 大厂程序员是怎么用的。掘金的字节课。
Go 实战项目 rosedb 源码剖析 1—架构原理。
rosedb github。
2024年吃透MySQL数据库(MySQL高级优化+索引调优+SQL调优+经典面试题一站式掌握)。
2024吃透数据库MySQL+Redis缓存+分库分表实战,1000分钟数据库面试高质量教程!
一些想看的场景题。
web 通识
25 | 认证机制:应用程序如何进行访问认证?讲得非常好。
cookie、localStorage和sessionStorage三者的区别。
微服务 / 分布式 / rpc / 流计算 / 云计算
分布式 ID 详解 CSDN。 一文读懂“Snowflake(雪花)”算法 腾讯云。
‘分布式事务‘ 圣经:从入门到精通,架构师尼恩最新、最全详解 (50+图文4万字全面总结 )。
云原生灰度更新实践。
k8s灰度更新_k8s实现灰度发布。
未读。
分布式系统基础:
- CAP定理与BASE理论(理解分布式系统设计的核心约束)
- 共识算法(Raft/Paxos → 实现自己的简易版本)
- 分布式事务(2PC/TCC/SAGA → 结合具体框架如Seata)
- 服务发现与负载均衡(ZooKeeper/etcd → 实现服务注册中心)
- 分布式锁与时钟同步(Redlock算法与NTP协议)
云计算核心:
- 虚拟化技术(KVM/QEMU → 尝试手动创建虚拟机)
- 容器化演进(Docker原理 → 手动构建镜像并分析层级结构)
- 编排系统(Kubernetes架构 → 重点掌握Pod调度策略)
- Serverless范式(冷启动问题与函数计算优化)
- 云原生生态(Service Mesh/Istio的sidecar模式)
架构
TA / 引擎 / 游戏
我是一名前端,部门想让我转webgl方向,要不要考虑一下? - Jhohkkk的回答 - 知乎 – 图程路线。
Ray Tracing: The Next Week V3.0中文翻译(上)。
Ray Tracing: The Next Week V3.0中文翻译(下)。
audiokinetic。音频开发。
unreal engine Mesh Drawing Pipeline。
游戏制作的窄门:构建mini游戏引擎 - 1 - Third Party Libs。
音频库FMOD。
FMOD。远不仅是音频库,还有引擎内核的。
花了一年半时间写的玩具离线渲染器,用来学习并实现各种渲染算法。
导出 3D 刚体物理并用 C/C++ 实现:Deriving 3D Rigid Body Physics and implementing it in C/C++ (with intuitions)。
数字孪生常见特效Shader实现4 直线 PolyLine。
图形学: 入门:GAMES-101 实时渲染:GAMES-202、GAMES-104、RTR4(https://github.com/Morakito/Real-Time-Rendering-4th-CN) 离线渲染: 简单的软光追:Ray Tracing in One Weekend三部曲(https://raytracing.github.io) 进阶:PBRT-V4 (https://pbr-book.org/4ed/contents) 图形API: OpenGL:https://learnopengl-cn.github.io Vulkan:渐进式教程:https://vulkan-tutorial.com Example:https://github.com/SaschaWillems/Vulkan 将Vulkan封装成RHI,写出小引擎:https://github.com/BoomingTech/Piccolo 引擎原理: GAMES-104, 课程附带的 Piccolo源码值得一读 (https://github.com/BoomingTech/Piccolo) Godot (https://github.com/godotengine/godot) 以及虚幻5源码
引擎使用: Unity:https://catlikecoding.com/unity/tutorials/
编程: C#:《C#图解教程》 Shader:《Unity Shader 入门精要》 C++:《C++ Primer》《Effective Modern C++》《深度探索C++对象模型》《C++并发编程实战》 Lua:《Lua程序设计》 以及设计模式 其他: GDC SIGGRAPH
Unity开发,手机sdk接入
搞懂Unity在Android上C#,Java,C++的互通。
AI / 机器学习
B站最全智能优化算法课程,模拟退火算法,粒子群算法,遗传算法等16种优化算法_机器学习_深度学习_人工智能。
Python
一个标星144.4k⭐Python项目 100 天从新手到大师 :Python-100-Days。
Python-100-Days。
13分钟解释每个Python库/模块 | Python 常用库。
其他
java 手写一个WEB应用服务,彻底搞懂Tomcat。
训练营、证书、比赛、GameJam、实习
PAT考试
OSPP开源之夏
字节青训营
七牛云1024创作节
code forces
GitLink“确实开源”编程夏令营(GLCC)