2010-11-27 60 views
1

我正在用SDL,OpenGL,物理引擎和嵌入式脚本语言编写游戏。抽象,我做得太多了吗?

我在过去几周里一直在做的事情:抽象。我写了表示程序本身,纹理,字体,物理对象等的抽象类。

  • 我抽象得太多了,或者我怎么知道我是谁?
  • 在进入实际开发之前,这是一个很好的实践来抽象所有库吗?
+0

一点都不,你在做什么是好的。但是你应该在[programmers.stackexchange.com](http://programmers.stackexchange.com)上提问。 – casablanca 2010-11-27 18:09:32

回答

2

到这里看看:how much abstraction is too much?

基本上你需要做某种成本效益分析的。如果您可以轻松理解抽象,并且对您的游戏带来实实在在的好处,那就去做吧。如果它开始让事情变得不必要的复杂,并且很难理解它被抽象的东西,那么它可能不值得。有一个收益递减点,但找到它并证明另一层间接是否是一个好主意是合理的艺术。

在所有第一 在此之前很好的做法, 抽象的所有库进入实际发展?

如果您是唯一的开发人员,那么它将主要围绕您的个人偏好进行。如果你对图书馆很熟悉,并且可以很容易地知道发生了什么,那么你很好。如果涉及到其他人,那么这取决于你的抽象是多么容易使用,如果学习它比使用没有任何附加层的实际库更好。

1

既然您的目标是创建一个游戏,那么我会建议您摆脱迄今为止创建的所有抽象层。直接使用任何库。

花你所有的时间在屏幕上移动的东西,以便尽可能快地尝试你的游戏理念和设计。具有额外的抽象层将会减慢这个过程。

当您达到某个部分目标时,然后花费一段固定的时间清理代码。这是您添加抽象以解决具体问题的地方。但不要过头。

然后继续创建你的游戏。最终,抽象与游戏的乐趣或成瘾程度无关。