用编程做游戏要学什么(学习编程丨程序员想学习C 做游戏开发,需要掌握哪些基本知识?)

学习编程丨步骤员想学习C 做游戏开发,必要把握哪些基本知识?

C 这门言语从诞生到今天以前履历了将近30个年初。不成否定,它的学习难度都比别的言语较高。而它的学习难度,主要来自于它的繁复性。

如今C 的使用范围比从前以前少了很多,java、C#、python等言语在很多方面以前可以代替C 。但是也有很多场合是其他言语完全无法交换的,主要会合在必要运转听从比力高的行业;好比游戏、高效的办事器。

如今学习java、C#等言语的人数远远高于C ,主要是由于C 的入门门槛太高。

以是在此我们不讨论具体的武艺细节,只说我们在哪个阶段应该学习什么东西。有个体系的方案。

1. 言语基本

我们要成为一个步骤员,学的东西会很多很杂,但是最开头一定要从言语开头学习。

学习言语的目标就是打好基本,特别是自学的,一定方案好本人的学习路途,一步一个脚迹学习下去。学习言语最紧张的莫过于多念书,但不克不及任意找一本C 册本就去读了。

保举本合适学C 读的书:《C primer plus》《C 步骤计划言语》《Effective c 》等

2. GUI

C 方面的GUI库有很多种,好比MFC、WTL、wxWidgets、QT。

这些GUI库都各有本人的特点,但是我们只需先了解一种就可以了,只需深化了解了一种GUI库。

必要的时分再学习其他的就够了,实质上都差不多,很快就可以上手了。

MFC固然计划上有很多成绩,但是作为入门照旧不错的,并且学习材料很多,碰到成绩也好处理。

3. 数据布局和算法

很多人都无视了数据布局和算法方面的知识,尤其是一些编程言语的库做得十分好;几乎不必要本人去完成一些数据布局和算法,招致如今很多步骤员不器重乃至忽略这方面的知识。

但是,当我们想让我们的步骤跑的更快、内存占用更少的时分,这些知识就十分十分紧张了。很多步骤员都是刚开头的时分不器重这些,但是事情几年后又来补习这些知识。

最开头约莫不必要学习的太深化,但是基本的数据布局和算法一定要晓得。

4. 数据库

学习数据库的基本知识,并且把握一种数据库使用。

保举使用Oracle,并且最好不要用一些封装好的接口。

而应该直接用Oracle提供的数据库API,约莫对数据库了解的会更深化。

5. 并行

CPU主频以前不克不及依照摩尔定律了,如今CPU提高的趋向是多中心。无论是多线程,照旧多历程,都是为了更好的使用CPU的功能,提供更好的用户体验。这就要求我们假如要写出高效的使用步骤,一定要触及到并行盘算。多花些精力在并行盘算上吧,一定会有丰厚的报答。

6.网络编程

这里所指的网络编程是指socket编程。

如今C 的使用很多都是在做办事器开发,怎样开发一个高并发、大吞吐量、高安定性的办事器就是我们要思索的了。

7. 计划形式

计划形式不是具体的武艺,更多的是怎样让代码更容易阅读、更好扩展、更容易使用。

别的想要成为一个精良的、有才能步骤员,做软件开发的话,就来学习C/C 吧,并且学习编程的话有一个学习的气氛跟交换圈子特别紧张!这里我保举一个C/C 交换扣裙,--先7841;后43133,不管你是大牛照旧小白,各位都一同发展提高。

8. 库的使用

C 标准库仅仅提供了一些很基本的功效,以是我们常常会引入一些第三方库。最出名的恐怕就是被称为准标准库的boost库,它提供了我们编程中用到的各方面的武艺,文本处理、算法、网络、多线程、图像处理等等,几乎包罗万象。

别的也有一些专著于某一方面的库,好比ACE是网络通讯方面的,TinyXML是剖析xml的,OGRE是图形渲染方面的。

9. 利用体系的知识

步骤员必要了解的利用体系知识和平凡用户是不一样的一个妙手是必要深化了解利用体系的方方面面,而不是停留在使用层面。

至于应该了解哪些知识,Windows上的去看《Windows中心编程》,Linux的去看《深化了解Linux内核》,应该可以晓得本人应该学什么了。

以上都是学习C 游戏开发的前一阶段准备,也就是打好基本。外表都是基本功,看起来有点多,但是磨刀不误砍柴工。这关于你后方学习游戏开发有十分大的协助。

总而言之,路途照旧很艰苦的,且行且爱惜!!!

用编程做游戏要学什么(学习编程丨程序员想学习C  做游戏开发,需要掌握哪些基本知识?)(图1)

GM游戏 更多