咖啡日语论坛

 找回密码
 注~册
搜索
查看: 29|回复: 0

聊聊如何学习c++游戏服务端编程

[复制链接]
发表于 2022-10-30 07:17:28 | 显示全部楼层 |阅读模式

++游戏服务端编程有什么书籍推荐吗培训网的具体问题可以到我们网站了解一下,也有业内领域专业的客服为您解答问题,为成功合作打下一个良好的开端!



用过但是++项目如何编译运行都不知道,有没有服务端开发书籍推荐


目前C++做服务器,多用于高并发及时性强的领域,比如游戏,金融等。而游戏服务端编程主要是个方面,络,数据存储,逻辑处理。后两个方面各有不同的策略,可以进入再了解。而游戏服务器编程的重中之重就是络,如果你精通了C络编程,学习任何的框架都不成问题。在我看来,游戏服务器端编程除了大量的业务逻辑,主要有两个大的方向:1、分布式系统,2、服务器端游戏引擎。


分布式系统


分布式的方向比较通用,分布式锁、分布式队列、分布式缓存、分布式存储等等,不仅仅可以做游戏,还可以做任意的服务器端,比如说微信、、滴滴打车、云,等等。随着的火热,近年来分布式的发展有加速之势。知乎也有一些帖子可以参考。


服务器端游戏引擎


服务器端游戏引擎方向比较专,适用于特别喜欢游戏的人,不仅仅需要懂服务器还需要懂引擎,目前这方面的人才比较缺乏。我对这个方向也没啥经验,仅仅知道一些关于PX的知识。


要深入了解游戏服务器的套路,需要进入到相关的团队,在开发运营中和大家一起摸索总结。在这之前,需要学习一些基础知识。游戏服务器端编程需要的基础知识主要有:1、编程语言,2、算法,3、设计模式。


编程语言


每个不同,据我所知有主要有C++、、、。我司用C++。不管用啥,对所选的编程语言都要足够的熟悉。比如说学C++连::都不知道的人,不适合做服务器。关于编程语言的书就数不胜数了,对于C++,推荐《STL》。懒人可以不看其它的书,但是这本必看,因为薄不浪费时间,看完不会坑队友。


算法


游戏服务器程序本身就是算法密集型,是为所有在线的玩家服务器的,低效的代码浪费的时间在服务器端可能会成倍地被放大,算法化是家常便饭。一个团队可能通常只需要一个特别精通算法的人,来进行攻坚和困难的算法化,但是其他人也要懂一些基本的算法。游戏的业务逻辑本身也非常复杂,多重嵌套的循环处不在,不懂算法的人连写出来的循环都怪怪的,一不小心就将复杂度提升了一个数量级。算法方面的书籍也是非常之多,但是如果有时间,推荐找一个的刷题,至少刷一百题以上,至此,不能说写出来的服务器代码多么高效,大多数情况下至少不拖后腿了。刷题可以亲身体会到每个化点在大规模输入的情况下对执行时间的影响程度,这种体会正是服务器编程所需要的。《算法竞赛入门经典》是学习算法的好书。


设计模式


说是熟悉面向对象可能会更贴切,因为模式的字在比较后反而不重要了。设计模式是为了在组织代码的时候能够按照比较便于维护和扩展的套路。关于设计模式的作用,工程的代码量越大越能体现出来、项目在线上运营的时间越长也越能体现出来。设计模式的领悟也要靠写很多代码,在C++的领域,学习使用QT是了解设计模式不错的途径。《与模式》是了解设计模式的好书。


此外,络、操作系统都是游戏服务器必须掌握的知识,服务器编程的入门书籍推荐《高性能服务器编程》、《络编程第二卷》。


如果你连C++工程的编译运行都做不到,建议从C#()入手吧。


也许你很就发现你这辈子都用不上C++呢。


以后碰上对运行效率要求极苛刻的情况,也可以用C++写算法,用C#调用。


学习C++比较好的环境并不是看书,而是直接参与项目,这种上古语言,其已经很少有什么书能教你构建一个好的工程了。合理的使用方式都在苟存的项目中,你如果没有机会参与际项目,还是使用其他语言,这样能让你有更多时间去接触和学习语言之外的计算机知识。


如果你非要通过自学C++做项目,送你一句话:皓首穷经,岁月蹉跎。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注~册

本版积分规则

小黑屋|手机版|咖啡日语

GMT+8, 2025-1-12 17:56

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表