大一小学期网络游戏分享(4) 将军棋Pro 总结与收获 通

梦蕊教Java 2024-07-28 16:21:35

大一小学期网络游戏分享(4) 将军棋Pro 总结与收获 通过本次项目的编写,我更深入地体会了完整的短期项目开发流程,也更深入的了解了Java语言,更深入地体会到了面向对象的思想。 JVM系语言最强大的一点就在于它完善的生态系统,使用Gradle作为构建工具不仅可以享受Maven Central的各种第三方库,也可以更好地构建项目的架构。除此以外,我还认识到了良好的架构设计的重要性,在本次项目中,我在第一天由于感受到Swing的局限性,换用了libGDX作为图形引擎,归功于我把业务逻辑和多线程没有和GUI放在一同进行,分别归属不同的包和不同的类,GUI重构在一个下午就完成了,这样对软件包进行分别构建一方面方便别人进行检查,一方面也方便了自己进行相关属性方法的调用,得益于利用Kotlin的单例模式简化编写、类型推断等语法糖,项目开发进度十分快速。其次,我成功地拆解了Generals.io的运行逻辑,了解了一个较为完善的游戏应该如何进行顶层设计,同时得益于OOP的设计思想,通过对象的序列化和反序列化,避免了服务器-客户端数据传输字符串检查和分割的过程。除此以外,在回放扩展功能的编写中,我学会了Sqlite和JDBC的使用,初步了解了SQL语句的基本语法,并通过学习JFreeChart、iText、jxl等第三方库的源代码,了解如何使用一个第三方库,并成功实现了图表的生成和PDF的生成。 游戏开发涉及到从设计到实现的各个环节,包括需求分析、设计框架、编码实现、测试调试等。通过这一次项目,我感受到了从需求到框架,从编程到调试的全流程,在调试中我使用IDEA的断点功能,通过内存监视、性能监视等方法解决了一系列Bug。编码规范性也是十分重要的,如果不是我遵从面向对象的代码规范,GUI的重构就不会那么顺利,项目开发效率也会大幅下降。另外,要敢于尝试新的技术,计算机科学是不断发展的学科,前沿技术始终在迭代,要有不断学习新知识的勇气,新技术能为项目提供许多优秀的解决方案,减少代码不必要的复杂性,因此学习未知的技术是我们学习路上必不可少的技能之一。

0 阅读:0