本人在学校里没好好学,毕业时基本是什么都不懂的,工作几年后才有能力自己写了个俄罗斯方块游戏,现在已经实现了单人游戏,双人对战,人机对战功能, 本来计划还有游戏录制和播放,网络对战的功能, 可现在本人没什么精力再继续开发, 所以把代码Share出来,希望有心人可以继续开发, 也望大家指出不足.
说几点开发这个软件的经验:
1.在静态Lib里不要用Singleton模式,因为链接时每个模块都会生成一个实例, 本人在开发它时有惨痛的教训.
2.尽量将逻辑数据和界面分离, 比如俄罗斯方块的逻辑数据就是方块形状,不要把方块把颜色图片等包含进来, 这是这个程序需要改进的。
3.逻辑运算应该是与界面无关的, 比如我这里模拟电脑玩家进行AI运算时竟然需要一个隐藏的后台窗口, 真是郁闷。
4.尽量把一些常用的代码封装称自己的库, 不停的优化和改进,这样才能进步, 我这里的所有代码基本上都是自己写的,所以工作量很大 ,别人的俄罗斯方块几千行就可以搞定,我的却需要几万行。
5.尽量用智能指针, 这也是我需要改进的。
6.保持系统架构清晰,比如说模块和模块,类与类的耦合性,文件间的依赖关系等, 总的架构这里还是比较清晰的,但内部做的不够好。
7.代码注释, 其实我觉得好的代码应该是自注释,不需要严格按照代码注释规范.
我QQ:55841310,想在上面改进或继续开发的朋友可和我联系.
下载地址:
http://download.csdn.net/source/1341618