CONTENTS
基础篇 走进游戏开发
第1章 认识游戏 2
1.1 什么是游戏 2
1.1.1 游戏的定义 2
1.1.2 游戏的分类 3
1.2 游戏开发及分工 7
1.3 游戏行业现状分析 12
1.4 游戏服务器开发要点 15
总结 17
第2章 环境搭建 18
2.1 Windows开发环境搭建 18
2.1.1 安装JDK 18
2.1.2 安装Eclipse 20
2.1.3 安装数据库客户端工具 21
2.1.4 安装SSH工具 21
2.1.5 安装其他工具 22
2.2 Mac OS X开发环境搭建 22
2.2.1 安装JDK 23
2.2.2 安装Eclipse 23
2.2.3 安装数据库客户端工具 24
2.2.4 安装SSH工具 24
2.2.5 安装其他工具 24
2.3 Linux服务器环境搭建 25
2.3.1 安装JDK 25
2.3.2 安装Tomcat 26
2.3.3 安装MySQL 26
2.3.4 安装Mongo 28
2.3.5 安装Redis 29
2.3.6 安装Memcache 32
2.4 总结 33
入门篇 游戏开发
第3章 网络通信 36
3.1 通信协议 36
3.1.1 面向连接的TCP 37
3.1.2 面向数据报的UDP 38
3.1.3 HTTP编程 39
3.1.4 Socket编程 46
3.1.5 WebSocket编程 54
3.2 Java NIO基础 58
3.2.1 BIO编程(Blocking-IO,阻塞式IO) 59
3.2.2 NIO编程(Non-Blocking IO,非阻塞式IO) 61
3.2.3 AIO编程(Async IO/NIO.2,异步IO) 68
3.3 Mina的介绍及其使用 75
3.3.1 总体架构 76
3.3.2 IoService 77
3.3.3 IoFilterChain 77
3.3.4 IoHandler 77
3.3.5 IoSession 77
3.3.6 工作原理 78
3.3.7 Acceptor与Connector线程 78
3.3.8 Processor线程 78
3.3.9 线程模型 79
3.3.10 请求的处理顺序 80
3.3.11 Mina编程 81
3.4 Netty的介绍及其使用 88
3.4.1 总体架构 88
3.4.2 零拷贝 89
3.4.3 Codec框架 90
3.4.4 Channel 90
3.4.5 ChannelEvent 91
3.4.6 ChannelPipeline 91
3.4.7 Netty编程 91
总结 100
第4章 数据交互 101
4.1 数据传输格式 101
4.2 JSON的使用及解析 103
4.2.1 JSON语法 103
4.2.2 JSON对象 104
4.2.3 JSON数组 104
4.2.4 Java中的JSON解析 105
4.3 XML的使用及解析 110
4.3.1 XML的特征 111
4.3.2 数据共享 111
4.3.3 数据传输 111
4.3.4 平台兼容 111
4.3.5 JSON与XML的比较 112
4.3.6 Java中的XML解析 112
4.4 Google Protocol Buffer的介绍及使用 128
4.4.1 Protobuffer的安装与编译 128
4.4.2 Protobuffer的语法 129
4.4.3 生成Java类 130
4.4.4 Eclipse的protobuf-dt插件 131
4.4.5 示例程序 132
总结 134
第5章 数据缓存与持久化 135
5.1 游戏数据存储 135
5.1.1 数据分类 136
5.1.2 数据缓存方式 136
5.1.3 数据持久化方式 137
5.1.4 数据库的比较 137
5.2 MySQL的介绍及使用 138
5.2.1 特点 138
5.2.2 数据类型 139
5.2.3 MySQL的使用 139
5.2.4 在Java中使用MySQL 142
5.3 MongoDB的介绍及使用 157
5.3.1 MongoDB的主要特点 157
5.3.2 了解API 159
5.3.3 Mongo的使用 162
5.4 Memcache的介绍及使用 174
5.4.1 Memcache的特点 175
5.4.2 Memcache的使用场景 176
5.4.3 在Java中使用Memcache 177
5.4.4 客户端使用要点 182
5.5 Redis的介绍及使用 183
5.5.1 Redis的特点 183
5.5.2 Redis的持久化 184
5.5.3 Redis的主从复制 184
5.5.4 在Java中使用Redis 185
总结 199
第6章 游戏逻辑 200
6.1 逻辑架构 200
6.1.1 项目目录 200
6.1.2 模块介绍 202
6.2 逻辑流程 212
6.2.1 网络模块 212
6.2.2 线程池 221
6.2.3 启动服务器 222
6.2.4 逻辑请求处理 223
6.2.5 关闭服务器 228
6.3 事件处理器 229
6.4 定时任务 236
6.5 RPC框架 244
6.5.1 Json-rpc 244
6.5.2 Motan 253
总结 264
第7章 游戏安全 265
7.1 游戏安全的必要性 265
7.2 登录安全 266
7.3 游戏充值 266
7.4 SQL注入 267
7.5 通信协议与消息格式 268
7.6 整型溢出 269
7.7 并发请求 269
7.8 逻辑漏洞 270
7.9 日志系统 271
总结 271
高级篇 游戏服务器的设计及优化
第8章 服务器架构分析 274
8.1 服务器架构的演变过程 274
8.2 全区同服架构分析 277
8.2.1 COC架构模型分析 278
8.2.2 COK架构模型分析 279
8.3 分区分服架构分析 281
8.4 弱联网类游戏架构分析 282
8.5 MMORPG类游戏架构分析 283
总结 285
第9章 《皇室战争》游戏开发实战 286
9.1 微竞技游戏介绍 286
9.2 架构分析及搭建 287
9.2.1 功能分析 287
9.2.2 服务器部署架构 288
9.2.3 系统架构 289
9.3 数据持久化方案 290
9.3.1 数据结构分析 290
9.3.2 使用Morphia操作MongoDB 295
9.4 Netty网络框架的使用 300
9.4.1 Netty实现的HTTP服务器 300
9.4.2 Netty实现的TCP服务器 309
9.5 账号系统 316
9.6 个人信息 323
9.7 英雄卡牌系统 327
9.8 宝箱系统 334
9.9 战斗系统 339
9.10 客户端模拟 349
9.10.1 登录界面 349
9.10.2 选服界面 354
9.10.3 主逻辑界面 358
9.10.4 对战界面 363
总结 372
第10章 游戏开发技术前景 373
10.1 Egret 373
10.2 Cocos 2D 374
10.3 Unity 375
10.4 Unreal 376
10.5 Java 376
10.6 Node.js 377
总结 378
· · · · · · (
收起)
评分
☆☆☆☆☆
迄今为止买过最垃圾的书,没有之一,严重影响心情。 1-2章教你安装jdk环境;3章回忆了计算机课堂的tcp/ip协; 第章教你解析json,xml; 5章教你mongo, mysql, redis...的安装;最后教你实现简单的socket,http服务并展望前端的未来
评分
☆☆☆☆☆
看了下目录,没啥干货,大篇幅讲安装环境的,还有很多介绍框架的。
评分
☆☆☆☆☆
好久没看这种代码占一半的书了. 对于自学能力差的,网上搜索能力一半的人. 书中的代码或许还不错(我没有细看,也没有运行). 和概念相关的知识呢, 只能说帮我查遗补漏了. 总的来讲, 对游戏服务器开发很感兴趣, 但一脸懵逼的人来说, 看这本书入个门,了解下还是可以的.
评分
☆☆☆☆☆
《简单介绍Java游戏服务器开发相关的技术概要》,一星给第八和第九章。
评分
☆☆☆☆☆
作者很年轻,或许不会有很丰富的经验,但也不妨抱着“三人行必有我师”的态度看一看; 最后总结该书只能算入门吧,深入还得多多实践考量各种场景下的实际情况