出版时间:2009-3 出版社:电子工业出版社 作者:(韩)韩东勋 页数:334 字数:550400 译者:马晓阳,刘娟
Tag标签:无
前言
16年前,父亲曾经送给我一本电脑读物作为初中的入学礼物,记得当时的电脑只是用于游戏和文字处理,而如今电脑已经成了我们生活中必不可少的家电产品,小时候在科幻电影中才能看到的电脑订餐、网络购物也已经成为了现实。不过十余年,电脑技术已经有了惊人的发展和变化。电脑技术的发展可以说是日新月异。在以前,KB已经算是很大的容量,而现在,人们已经不满足于TB的容量了。《网络游戏Server编程》将要介绍的就是历史最为悠久的游戏编程。回顾一下自己的游戏历程:最早接触游戏早在初中时候,印象最深的就是趁父母睡觉时偷偷爬起来玩游戏,可以说当时痴迷于游戏。到了高中,就有了自己设计游戏的想法,最后不顾父母的反对报考了计算机专业。大学毕业之后也就开始步入游戏相关领域,直到现在,笔者还对游戏有着非同一般的热情。因此,谨以此书献给和我一样有着游戏开发热情的广大读者。 《网络游戏Server编程》向读者展示了网络游戏服务器设计和开发的基础知识,以及实战案例。首先介绍了C/C++的基础知识、开发服务器所必需的基础类及通信类;然后说明了C/C++基础知识中的继承(Inhefitance)、重载(Overloading)等概念,以及基础类中的Log类、Memory类和1hread类;接着在通信类中对服务器编程所需的Winsock及IOCP进行了说明;还介绍了如何运行库和类设计游戏服务器;另外,还介绍了其他书籍中不常见到的性能监视器(PerformanceMonitor)、Packet管理框架、MiniDump、UDP Hole punching等内容,最后设计出PIGU游戏服务器。 感谢帮助我和鼓励我的各位朋友,尤其是情报文化社的南武铉组长、李美香女士。 感谢一直以来信任、鼓励我的父母。 最后还要感谢我亲爱的妻子,正是你的关爱和支持,才使我有了今天的收获。
内容概要
本书向读者展示了网络游戏服务器设计和开发的基础知识及实战案例,首先介绍了C/C++的基础知识、开发服务器所必需的基础类及通信类;然后说明了C/C++基础知识中的继承(Inheritance)、重载(Overloading)等概念,以及基础类中的Log、Memory类和Thread类;接着在通信类中对服务器编程所需的Winsock及IOCP进行了说明;还介绍了如何运行库和类设计游戏服务器;另外,介绍了其他书籍中不常见到的性能监视器(Performance Monitor)、Packet管理框架、MiniDump、UDP Hole punching等内容;最后设计了PIGU游戏服务器。 本书适合广大网络游戏开发人员参考学习,同时也可作为高等院校相关专业师生的参考用书。
书籍目录
第1章 基础知识 1.1 什么是模块化 1.1.1 为什么要模块化 1.1.2 如何进行模块化 1.2 函数指针(Delegate) 1.3 Windows函数的使用 1.3.1 为什么要使用Windows函数 1.3.2 常用函数的使用 1.3.3 TCHAR的使用 1.4 类和继承 1.4.1 什么是继承 1.4.2 Virtual的使用 1.5 模板(Template) 1.6 运算符的重载(Operator Overloading) 1.7 服务器程序的思考方式 1.7.1 内存管理的比较 1.7.2 type的指定 1.7.3 类型转换的方法 1.7.4 Const的生活化 1.8 线程(Thread) 1.9 纤程(Fiber) 1.10 临界区(Critical Section) 1.11 小结第2章 基础库的制作 2.1 Stream类 2.2 Registry类 2.3 IniFile类 2.4 CircularQueue类 2.5 Log类 2.6 小结第3章 系统库的制作 3.1 MemoryPool类 3.1.1 内存管理 3.1.2 不同内存管理方法的说明 3.1.3 源代码分析 3.1.4 案例 3.2 Crypt类 3.2.1 简单的加密 3.2.2 源代码分析 3.2.3 案例 3.3 Service类 3.3.1 什么是Service 3.3.2 使用API说明 3.3.3 源代码分析 3.3.4 案例 3.4 MiniDump类 3.4.1 异常处理(Handled exception)和未处理异常(Unhandled exception) 3.4.2 小型转储(MiniDump) 3.4.3 使用API分析说明 3.4.4 源代码分析 3.4.5 案例 3.5 MemoryLeak类 3.5.1 源代码分析 3.5.2 案例 3.6 ThreadSync类 3.7 Random类 3.8 小结第4章 Network Base的制作 4.1 Network类 4.1.1 源代码分析 4.1.2 TCP源代码分析 4.1.3 UDP源代码分析 4.1.4 案例 4.2 PacketSession类 4.2.1 TCP源代码分析 4.2.2 UDP源代码分析 4.3 EventSelect类 4.4 IOCP类 4.5 小结第5章 网络模块(Network Module)的运用案例 5.1 TCP IOCP案例 5.1.1 源代码分析 5.1.2 案例 5.2 UDP IOCP案例 5.3 CClientSession案例 5.4 小结第6章 实用模块的制作 6.1 Packet Generator的制作 6.1.1 语法 6.1.2 处理程序分析 6.1.3 使用方法 6.2 Performance Monitor的制作 6.2.1 性能监视器(Performance Monitor) 6.2.2 性能监视器注册表结构 6.2.3 性能监视器DLL结构 6.2.4 源代码分析 6.2.5 使用方法 6.3 小结第7章 客户端/服务器(Client/Server)的应用 7.1 源代码整理 7.2 服务器的基本制作 7.2.1 Serverlocp类 7.2.2 ConnectedSession类 7.2.3 ConnectedSessionManager类 7.2.4 Serverlocp类的添加 7.2.5 Server.cpp的添加 7.2.6 KeepAlive的添加 7.3 客户端的基本制作 7.3.1 TestClientSession类 7.3.2 Main 7.4 协议(Protocol)的定义 7.5 协议(Protocol)的整理 7.5.1 服务器协议的处理 7.5.2 客户端的添加事项 7.6 功能操作的确认 7.7 小结第8章 UDP Hole Punching 8.1 NAT类型 8.1.1 Full Cone NAT 8.1.2 Restricted Cone NAT 8.1.3 Port Restricted Cone NAT 8.1.4 Symmetric NAT 8.2 什么是UDP Hole Punching第9章 游戏服务器案例 9.1 协议(Protocol)分析 9.2 Character类说明 9.3 ConnectedUser类说明 9.4 ConnectedUserManager类说明 9.5 Room类说明 9.6 RoomManager类说明 9.7 GameIOCP类说明 9.8 GameUDPIOCP类说明 9.9 LobbyProtocol处理 9.10 GameProtocol处理 9.11 小结附录A 服务器设计案例作者寄语
编辑推荐
它是网络游戏服务器开发的经典图书。全面剖析应用开发技术,学有所用。详细阐释网络游戏服务器编程的精髓。
图书封面
图书标签Tags
无
评论、评分、阅读与下载