-1

我用Java制作了一个游戏,但它基本上是一门很长的课程。您将如何拆分它,例如将所有 KeyListener 方法放入单独的 keylistener 类中,并将 50 或 getImage(...) 行放入单独的类中。

编辑:我认为我对原始问题不够清楚,我已经有一个用于播放器对象的类和一个动画类,但是其他所有内容,例如 keylisteners、paint、images、mouselisteners 都在主类中。而且我不知道如何在主类中获取代码并将其放在单独的类中。

4

3 回答 3

4

通过查看存在的几个责任。假设您在 1 个班级编写了一款太空侵略者游戏。您可以通过查看每个对象的职责将您的程序分成多个类(1 个类真的负责保持您的飞船位置和敌人位置吗?制作一个飞船和敌人类呢?)。

不要局限于拆分“游戏对象”,因为拆分界面、模型和域也会增加可维护性。

当您询问如何拆分课程时,您可能有兴趣创建一个设计(UML),这将改善您对项目的概述(因为这可能是您对拆分课程感兴趣的原因)。

于 2013-07-04T11:45:41.200 回答
2

听起来你有一个神级。试试我的技术:

http://blue-walrus.com/2010/12/refactoring-a-god-class/

于 2013-07-04T11:58:19.747 回答
1

您应该将单独类中的所有操作外包,并使用超类。检查您经常使用的代码并将它们合并,使它们更通用。因此,您可以节省许多代码行。

于 2013-07-04T11:41:44.390 回答