人工精选C++游戏服务器编程 从入门到掌握
先说结论:这门课的名字叫《C++游戏服务器编程 从入门到掌握》,但它的内容落点其实在 Linux 服务端开发这一侧。如果你的目标是做游戏后端、或者从其他语言转到 C++ 服务端方向,它值得花时间;如果你只是想学 C++ 语法或者做单机游戏客户端,那这门课不对口,建议绕开。 它解决的是哪类工作场景 游
会员可免费下载本篇月会员可免费领取。
开通会员 ›会员 · 按档位
游客按标价购买,不享受上表折扣。
支付成功后自动发放网盘链接,链接失效可找客服免费补
先说结论:这门课的名字叫《C++游戏服务器编程 从入门到掌握》,但它的内容落点其实在 Linux 服务端开发这一侧。如果你的目标是做游戏后端、或者从其他语言转到 C++ 服务端方向,它值得花时间;如果你只是想学 C++ 语法或者做单机游戏客户端,那这门课不对口,建议绕开。
它解决的是哪类工作场景
游戏服务器开发和普通 Web 后端不是一回事。它要处理的是长连接、高频小包、状态同步、定时器、广播分发这些具体问题。玩家一多,线程模型怎么选、网络 IO 怎么复用、消息怎么序列化,都会直接决定服务器撑不撑得住。
这门课覆盖的就是这类场景:从 TCP 网络编程、IO 多路复用,到协议设计、消息收发、连接管理,再到把一个个模块拼成一个能跑起来的服务端。学完你不会立刻写出一个能上线的商业游戏服,但你会清楚一套服务器框架的骨架长什么样、每个环节为什么这么设计。
学完能独立做什么
- 能在 Linux 下用 C++ 写一个支持多客户端同时连接的服务端程序,而不是只会写单机 demo;
- 能看懂并动手实现基本的网络通信层:连接建立、收发消息、断开清理;
- 能理解并选用合适的 IO 模型,知道阻塞、非阻塞、多路复用各自适合什么量级;
- 能按模块拆分服务端逻辑,把网络层和业务层分开,而不是全塞在一个 main 里;
- 能独立复现一套完整的小型服务端 Demo,写进自己的作品集或用来讲清楚项目经历。
注意这里说的是「独立复现」,不是「照着视频敲一遍」。两者的差距,面试官问两句就能听出来。
资料适合什么基础
这门课不适合零基础。看之前你至少要满足三条:C++ 能写类和指针,知道编译链接是怎么回事;Linux 基本命令会用,能在终端里编译运行程序;对进程、线程、socket 有模糊印象。缺其中任何一条,学起来都会卡,建议先补上再回来。
如果你是计算机相关专业的学生、或者已经工作但一直在做上层业务、想往底层服务端靠,这门课的难度曲线是比较合适的。它偏实战,不会花大篇幅推导理论,但也不至于只给代码不讲原因。
资料怎么用效率更高
课程配套了章节笔记,这是它比较实用的一点。建议不要一次性刷完,按这个节奏走:
- 先按顺序过一遍,重点在理解模块之间的调用关系,不要在某个语法细节上死磕;
- 每两三节停下来,用笔记对照自己写一遍核心代码,能默写出来才算过;
- 遇到网络模型、线程同步这类容易忘的部分,单独整理一份自己的对比表;
- 全部学完后,脱离视频,从零搭一个最简服务端,能跑通多客户端连接和消息转发,这个 Demo 就是你的面试素材。
最后提醒一句:这类课程的价值不在「看完」,而在「写完」。如果你只是把它当背景音刷一遍,收获会非常有限。给自己留出动手的时间,再决定要不要投入。
image.webp 下载附件 保存到相册 2023-2-2 17:52 上传
课程推荐
《C++游戏服务器编程 从入门到掌握》image.webp 下载附件 保存到相册 2023-2-2 17:52 上传【技能收获】学完可掌握:Linux 运维。课程以实战为导向,覆盖从基础概念到完整项目落地的关键步骤,配套章节笔记便于课后复盘与面试前快速回顾。【学习建议】建议按目录顺序学习,先打基础再进入综合实战章节;每完成 2~3 节可结合笔记整理一份学习小结,最终尝试独立复现一套完整 Demo 写入个人作品集。【就业发展】可面向岗位:Linux 运维工程师、SRE、云计算工程师、DevOps 工程师。云原生与自动化运维仍是企业 IT 刚需方向,认证 + 实战项目组合能显著提升面试通过率,适合向中高级运维或架构岗进阶。 若你已有一定编程或运维基础,本课程可帮助你在现有技能栈上快速叠加热门方向能力,提升求职时的项目说服力与薪资谈判空间。
视频目录(117 节)
课程目录
* 任务2:课程概述.mp4
* 任务3:IP详解第一部分.mp4
* 任务5:IP详解第二部分.mp4
* 任务6:TCP详解第一部分(介绍 + 工作原理 + 头部详解).mp4
* 任务7:TCP详解第二部分(状态与连接详解)战胜alphago,免费这节课.mp4
* 任务8:TCP详解第三部分(断开以及传送数据详解).mp4
* 任务9:TCP详解04(用wireshark工具查看TCP连接和断开和TCP杂项).mp4
* 任务11:伯克利socketAPI第一部分(socket C语言的接口的介绍).mp4
* 任务12:伯克利socket API第二部分(最简单的服务器和对应的客户端C语言的实现).mp4
* 任务14:C++语言的历史第一部分.mp4
* 任务15:C++语言历史第二部分.mp4
* 任务16:安装Linux Ubuntu 14.04虚拟机(准备工作).mp4
* 任务17:安装Linux Ubuntu 14.04虚拟机(安装).mp4
* 任务18:服务器开发需要用到的部分shell命令(第一部分).mp4
* 任务19:服务器开发需要用到的部分shell命令(第二部分).mp4
* 任务20:服务器开发需要用到的部分shell命令(第三部分).mp4
* 任务21:服务器开发需要用到的部分shell命令(第四部分).mp4
* 任务22:简易VIM教程(初步,存活状态).mp4
* 任务23:简易VIM教程(初步,比存活更进一步).mp4
* 任务24:简易VIM教程(初步,又进一步).mp4
* 任务25:简易VIM教程(初步,继续进步).mp4
* 任务26:scp 和 简易VIM教程(初步,配置).mp4
* 任务27:深入学习c++(准备).mp4
* 任务28:深入学习c++(关键字 第一部分).mp4
* 任务29:深入学习c++(关键字 第二部分).mp4
* 任务30:深入学习c++(关键字 第三部分).mp4
* 任务31:深入学习c++(关键字 第四部分).mp4
* 任务32:深入学习c++(关键字 第五部分).mp4
* 任务33:深入学习c++(关键字 第六部分).mp4
* 任务34:深入学习c++(关键字 第七部分).mp4
* 任务35:深入学习c++(类 为什么要用前置声明).mp4
* 任务36:深入学习c++(类 三个基本原则).mp4
* 任务37:深入学习c++(类 c++11后三个基本原则变成了五个基本原则).mp4
* 任务38:深入学习c++(类 绝对不要在析构函数里面抛出异常).mp4
* 任务39:深入学习c++(类 构造函数失败应该抛出异常).mp4
* 任务40:深入学习c++(类 虚函数遇到构造析构就退化了).mp4
* 任务41:深入学习c++(类 重新审视auto).mp4
* 任务42:深入学习c++(类 左值引用和右值引用(不考虑模板)).mp4
* 任务43:深入学习c++(类 构造函数和析构函数的经典应用 智能指针 前因).mp4
* 任务44:深入学习c++(类 std--shared_ptr 接口 常规使用).mp4
* 任务45:深入学习c++(类 std--shared_ptr 用weak_ptr打破循环引用).mp4
* 任务46:深入学习c++(类 std--shared_ptr 用enable_shared_from_this从this转换到shared_ptr).mp4
* 任务47:深入学习c++(类 std--unique_ptr 使用智能指针默认的选择,除非要共享).mp4
* 任务48:深入学习c++(类 使用智能指针需要注意的几个“坑”).mp4
* 任务49:深入学习c++(lambda函数, 简单介绍).mp4
* 任务50:深入学习c++(STL之容器,概述).mp4
* 任务51:深入学习c++(STL之容器,容器保存的是什么).mp4
* 任务52:深入学习c++(STL之容器,容器的通用接口).mp4
* 任务53:深入学习c++(STL之容器,std--array).mp4
* 任务54:深入学习c++(STL之容器,std--vector).mp4
* 任务55:深入学习c++(STL之容器,std--deque).mp4
* 任务56:深入学习c++(STL之容器,std--list).mp4
* 任务57:深入学习c++(STL之容器,std--forward_list).mp4
* 任务58:智能指针的一个陷阱(大家实际中应该避免这个坑).mp4
* 任务59:深入学习c++(STL之容器,std--set).mp4
* 任务60:深入学习c++(STL之容器,std--set 第二部分).mp4
* 任务61:深入学习c++(STL之容器,std--map).mp4
* 任务62:深入学习c++(STL之容器,unordered map set).mp4
* 任务63:多线程编程,游戏服务器的基础,简介.mp4
* 任务64:多线程编程,一种简单的应用,divide and conquer.mp4
* 任务65:阶段答疑(由学员朋友遇到的面试题展开的分析《构造与析构》).mp4
* 任务66:多线程编程,当线程间需要共享非const的资源,(问题引出).mp4
* 任务67:多线程编程,(thread的构造和新问题).mp4
* 任务68:多线程编程,(thread 和原子操作变量类型).mp4
* 任务69:多线程编程,(临界区 mutex).mp4
* 任务70:多线程编程,(临界区 mutex) 2.mp4
* 任务71:多线程编程,(临界区 mutex) 3.mp4
* 任务72:多线程编程,thread的两种“死法”.mp4
* 任务73:多线程编程,thread的间的交互 1.mp4
* 任务74:多线程编程,thread的间的交互 2.mp4
* 任务75:多线程编程,thread的间的交互 3.mp4
* 任务76:多线程编程,thread的间的交互 4.mp4
* 任务77:Windows下原生API 用IOCP编写一个简易的服务器模型 1.mp4
* 任务78:Windows下原生API 用IOCP编写一个简易的服务器模型 2.mp4
* 任务79:Windows下原生API 用IOCP编写一个简易的服务器模型 3.mp4
* 任务80:Windows下原生API 用IOCP编写一个简易的服务器模型 4.mp4
* 任务81:Windows下原生API 用IOCP编写一个简易的服务器模型 5.mp4
* 任务82:Windows下原生API 用IOCP编写一个简易的服务器模型 6.mp4
* 任务83:中期测试视频.mp4
* 任务84:boost库中的网络库asio 01.mp4
* 任务85:boost库中的网络库asio 02.mp4
* 任务86:前篇 中期测试解答.mp4
* 任务87:中篇 中期测试解答.mp4
* 任务88:后篇 中期测试解答.mp4
* 任务89:例子详解01 boost库中的网络库asio 03.mp4
* 任务90:例子详解02 捎带c++黑暗面 boost库中的网络库asio 04.mp4
* 任务91:详解03 lambda的本质 boost库中的网络库asio 05.mp4
* 任务92:详解04 boost库中的网络库asio 06.mp4
* 任务93:详解05 boost库中的网络库asio 07.mp4
* 任务94:详解06 同步阻塞的客户端 boost库中的网络库asio 08.mp4
* 任务95:详解07 时间服务器 网络库asio 09.mp4
* 任务96:详解08 异步时间服务器 网络库asio 10.mp4
* 任务97:详解09 Echo服务器 网络库asio 11.mp4
* 任务98:详解10 Echo服务器对应的客户端 网络库asio 12.mp4
* 任务99:详解11 聊天室服务器01 网络库asio 13.mp4
* 任务100:详解12 聊天室服务器02 网络库asio 14.mp4
* 任务101:详解13 聊天室服务器对应的客户端 网络库asio 15.mp4
* 任务102:详解14 聊天室服务器对应的客户端2 网络库asio 16.mp4
* 任务103:详解15 消息协议的设计(原始时代的C结构01) 网络库asio 17.mp4
* 任务104:详解16 消息协议的设计(原始时代的C结构02) 网络库asio 18.mp4
* 任务105:详解17 消息协议的设计(超越原始的结构体,序列化c++的类01) 网络库asio 19.mp4
* 任务106:详解18 消息协议的设计(超越原始的结构体,序列化c++的类02) 网络库asio 20.mp4
* 任务107:详解19 消息协议的设计(使用简单易的json 01) 网络库asio 21.mp4
* 任务108:详解20 消息协议的设计(效率和可读性的结合使用protobuf 01) 网络库asio 22.mp4
* 任务109:详解21 消息协议的设计(效率和可读性的结合使用protobuf 02) 网络库asio 23.mp4
* 任务110:详解22 消息协议的设计(效率和可读性的结合使用protobuf 03) 网络库asio 24.mp4
* 任务111:详解23 asio多线程01 网络库asio 25.mp4
* 任务112:详解24 asio多线程02 网络库asio 26.mp4
* 任务113:详解25 asio多线程03 网络库asio 27.mp4
* 任务114:详解26 asio多线程04 网络库asio 28.mp4
* 任务115:详解27 asio多线程05 网络库asio 29.mp4
* 任务116:杂项 日志.mp4
* 任务117:杂项 async.mp4
* 任务118:杂项 lua结合c++ 01.mp4
* 任务119:杂项 lua结合c++ 02.mp4
* 任务120:杂项 signal等 以及最终的结语.mp4
* 任务121:补充内容 cmake工具在linux平台下面的用法和示例.mp4





