【原创】纯OO:从设计到编码写一个FlappyBird (一)
说起来,自学计算机也有2年多的时间了,自己还没有从设计到编码,完完整整的设计一个基于面向对象的软件的经历。。囧
于是,就有了这个系列。首先选用的语言是Java,没别的原因,HeadFirst设计模式是Java写的,而且Java的包管理比较简单,适合小工程。其次选用的题材自然是游戏啦,最近wikioi在等结果的时候就有个FlappyBird的小游戏,当时在想如果小鸟换成墙之父方老师,说不定别有一番趣味:)
从画类图到编写完各个模块,一共花了2天时间,做完了后发现解耦的还行,就跟大家分享分享。
第一部分先是类图:
主要有5个类。
Game类:总览全局,调用其他类工作。
Bing类:(方老师版小鸟,自然叫Bing啦)其实是个接口,负责扮演小鸟的角色,平时自动往下掉,摁一下往上飞。
Obstacle类:接口。FlappyBird中的障碍物,碰到就死
DrawBoard类:接口。负责把Bing和Obstacle画到界面上来。
Judge类:接口。负责判断是否得分、小滨是否死亡的问题。// “滨”好像不是后鼻音?擦
定义操作:
1、鼠标点击:由于最终是在DrawBoard上点击,所以,DrawBoard的实现需要集成JPanel类。Game类将要监听DrawBoard的实现类的鼠标Pressed事件(clicked要求原地点原地放,有时候会因为用户误操作而不响应,不适合作为操作响应事件),并将其发送给Bing的实现,让其上升。
好了,第一部分就结束了,接下来的文章将分别实现游戏的各个部分。
posted on 2014-11-07 17:01 shadowmydx'sLab 阅读(1565) 评论(0) 编辑 收藏 举报