![]()
内容推荐 Python作为一种高-级程序设计语言,凭借其简洁、易读及可扩展性日渐成为程序设计领域备受推崇的语言之一。 本书基于Python 3.5版本进行讲解,通过13章的内容,深度揭示了Python编程的高-级技巧。本书从Python语言及其社区的现状开始介绍,对Python语法、命名规则、Python包的编写、部署代码、扩展程序开发、管理代码、文档编写、测试开发、代码优化、并发编程、设计模式等重要话题进行了全面系统化的讲解。 本书适合想要进一步提高自身Python编程技能的读者阅读,也适合对Python编程感兴趣的读者参考学习。全书结合典型且实用的开发案例,可以帮助读者创建高性能的、可靠且可维护的Python应用。 作者简介 Micha? Jaworski有着7年Python编程的经验。他还是graceful的创建者,这是一个构建于falcon之上的REST框架。他曾在不同的公司担任过多种角色,从一名普通的全栈开发人员到软件架构师再到一家快节奏创业公司的工程副总裁。他目前是Opera软件公司TV Store(电视应用商店)团队的首-席后端工程师。他在设计高性能的分布式服务方面拥有丰富的经验。他还是一些流行的Python开源项目的活跃贡献者。 Tarek Ziade?是Mozilla的工程经理,与一个专门用Python为Firefox构建大规模Web应用的团队合作。他对Python打包做出过贡献,而且从早期Zope开始就使用过各种不同的Python Web框架。 Tarek还创建了Afpy——法国的Python用户组,并且用法语写过两本关于Python的书。他还在诸如Solutions Linux、PyCon、OSCON和EuroPython等靠前活动中做过多次法语演讲和教学。 目录 目录 章\t网络游戏概述\t1 1.1 多人游戏的简要历程\t1 1.1.1 本地多人游戏\t1 1.1.2 早期网络多人游戏\t1 1.1.3 多用户网络游戏\t2 1.1.4 局域网游戏\t3 1.1.5 在线游戏\t3 1.1.6 大规模多人在线游戏\t4 1.1.7 移动网络游戏\t5 1.2 星际围攻:部落\t5 1.2.1 平台数据包模块\t7 1.2.2 连接管理器\t8 1.2.3 流管理器\t8 1.2.4 事件管理器\t9 1.2.5 Ghost管理器\t9 1.2.6 移动管理器\t10 1.2.7 其他系统\t10 1.3 帝国时代 \t10 1.3.1 轮班计时器\t11 1.3.2 同步 \t13 1.4 小结 \t13 1.5 复习题 \t14 1.6 延伸的阅读资料\t15 第2章\t互联网\t17 2.1 起源:分组交换\t17 2.2 TCP/IP模型\t19 2.3 物理层 \t20 2.4 链路层 \t20 2.4.1 Ethernet/802.3\t22 2.5 网络层 \t24 2.5.1 IPv4 \t25 2.5.2 IPv6 \t39 2.6 传输层 \t41 2.6.1 UDP \t42 2.6.2 TCP \t43 2.7 应用层 \t53 2.7.1 DHCP \t53 2.7.2 DNS \t54 2.7.3 NAT \t54 2.7.4 NAT穿越\t58 2.8 小结 \t61 2.9 复习题 \t62 2.10 延伸的阅读资料\t63 第3章\t伯克利套接字\t65 3.1 创建Socket\t65 3.2 API操作系统差异\t67 3.3 Socket地址\t70 3.3.1 类型安全\t73 3.3.2 用字符串初始化sockaddr\t74 3.3.3 绑定socket\t78 3.4 UDP Socket\t79 3.4.1 类型安全的UDP socket\t81 3.5 TCP Socket\t84 3.5.1 通过连接的socket实现发送和接收\t86 3.5.2 类型安全的TCP Socket\t87 3.6 阻塞和非阻塞I/O\t89 3.6.1 多线程 \t90 3.6.2 非阻塞I/O\t91 3.6.3 Select \t93 3.7 其他Socket选项\t98 3.8 总结 \t100 3.9 复习题 \t100 3.10 延伸的阅读资料\t101 第4章\t对象序列化\t103 4.1 序列化的需求\t103 4.2 流 \t107 4.2.1 内存流\t107 4.2.2 字节存储次序的兼容性\t112 4.2.3 比特流 \t116 4.3 引用数据 \t121 4.3.1 内联或嵌入\t122 4.3.2 链接 \t124 4.4 压缩 \t126 4.4.1 稀疏数组压缩\t127 4.4.2 熵编码 \t128 4.4.3 定点 \t130 4.4.4 几何压缩\t132 4.5 可维护性 \t134 4.5.1 抽象序列化方向\t134 4.5.2 数据驱动的序列化\t136 4.6 总结 \t139 4.7 复习题 \t140 4.8 延伸的阅读资料\t141 第5章\t对象复制\t143 5.1 世界状态 \t143 5.2 复制对象 \t143 5.2.1 对象创建注册表\t148 5.2.2 一个数据包中的多个对象\t152 5.3 朴素的世界状态复制方法\t152 5.4 世界状态中的变化\t157 5.6 RPC作为序列化对象\t164 5.7 自定义解决方案\t167 5.8 总结 \t168 5.9 复习题 \t168 5.10 延伸的阅读资料\t169 第6章\t网络拓扑和游戏样例\t171 6.1 网络拓扑 \t171 6.1.1 客户端-服务器\t171 6.1.2 对等网络\t174 6.2 客户端-服务器的实现\t175 6.2.1 服务器和客户端的代码分离\t176 6.2.2 网络管理器和欢迎新客户端\t178 6.2.3 输入共享和客户端代理\t183 6.3 对等网络的实现\t189 6.3.1 欢迎新对等体和开始游戏\t190 6.3.2 命令共享和锁步回合制\t192 6.3.3 保持同步\t199 6.4 总结 \t204 6.5 复习题 \t205 6.6 延伸的阅读资料\t205 第7章\t延迟、抖动和可靠性\t207 7.1 延迟 \t207 7.1.1 非网络延时\t207 7.1.2 网络延时\t210 7.2 抖动 \t212 7.3 数据包丢失\t213 7.4 可靠性:TCP还是UDP?\t215 7.5 数据包传递通知\t217 7.5.1 标记传出的数据包\t218 7.5.2 接收数据包并发送确认\t219 7.5.3 接收确认并传递状态\t224 7.6 对象复制可靠性\t230 7.7 模拟真实世界的条件\t238 7.8 总结 \t241 7.9 复习题 \t242 7.10 延伸的阅读资料\t242 第8章\t改进的延迟处理\t245 8.1 沉默的客户终端\t245 8.2 客户端插值\t247 8.3 客户端预测\t249 8.3.1 航位推测法\t252 8.3.2 客户端移动预测和重放\t255 8.3.3 通过技巧和优化隐藏延迟\t260 8.4 服务器端回退\t261 8.5 总结 \t262 8.6 复习题 \t263 8.7 延伸的阅读资料\t264 第9章\t可扩展性\t265 9.1 对象范围和相关性\t265 9.1.1 静态区域\t266 9.1.2 使用视椎\t267 9.1.3 其他可见性技术\t269 9.1.4 不可见时的相关性\t271 9.2 服务器分区\t271 9.3 实例化 \t273 9.4 优先级和频率\t274 9.5 总结 \t275 9.6 复习题 \t275 9.7 延伸的阅读资料\t276 0章\t安全性\t277 10.1 数据包嗅探\t277 10.1.1 中间人攻击\t277 10.1.2 在主机上的数据包嗅探\t280 10.2 输入验证\t281 10.3 软件作弊检测\t283 10.3.1 维尔福反作弊系统\t284 10.3.2 典狱长反作弊系统\t285 10.4 保护服务器\t285 10.4.1 分布式拒绝服务攻击\t286 10.4.2 坏数据\t286 10.4.3 时序攻击\t287 10.4.4 入侵 \t288 10.5 总结 \t289 10.6 复习题 \t290 10.7 延伸的阅读资料\t290 1章\t真实世界的引擎\t291 11.1 虚幻引擎4\t291 11.1.1 套接字和基本的网络体系\t291 11.1.2 游戏对象和拓扑\t292 11.1.3 Actor复制\t293 11.1.4 远程过程调用\t295 11.2 Unity \t296 11.2.1 传输层API\t296 11.2.2 游戏对象和拓扑\t297 11.2.3 生成对象和复制\t297 11.2.4 远程过程调用\t298 11.2.5 比赛安排\t298 11.3 总结 \t299 11.3 复习题 \t300 11.4 延伸的阅读资料\t300 2章\t玩家服务\t301 12.1 选择一种玩家服务\t301 12.2 基本设置\t302 12.2.1 初始化、运行和关闭\t303 12.2.2 用户ID和名称\t305 12.3 游戏大厅和比赛安排\t306 12.4 网络 \t310 12.5 玩家统计\t312 12.6 玩家成就\t318 12.7 排行榜 \t319 12.8 其他服务\t321 12.9 总结 \t322 12.10 复习题 \t323 12.11 延伸的阅读资料\t323 3章\t云托管专用服务器\t325 13.1 托管或不托管\t325 13.2 行业工具\t327 13.2.1 REST \t327 13.2.2 JSON \t328 13.2.3 Node.JS\t328 13.3 概述和术语\t329 13.3.1 服务器游戏实例\t330 13.3.2 游戏服务器进程\t330 13.3.3 游戏服务器\t331 13.3.4 硬件 \t331 13.4 本地服务器进程管理器\t332 13.4.1 进程监控\t336 13.5 虚拟机管理器\t339 13.5.1 虚拟机监控\t345 13.6 总结 \t348 13.7 复习题 \t349 13.8 延伸的阅读资料\t350 附录A\t现代C++基础\t351 |