`
Chris_bing
  • 浏览: 6387 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
继续题外话: 上一篇忘记发布到博客频道了,都没有人看到,这次一定不要忘记了,上一篇发的牢骚要看哦   /* --------------------------------------------正文分割线------------------------------------- */     记录分数的时候要更新视图(虽然现在还没显示分数,但是先做个准备),另外一半速度也跟它有关,或者会有什么奖励提示之类的东西,所以说分数的更新需要做很多操作,谈到这里,我想有些人已经想到了观察者模式(Observer),没错,就是用观察者模式。   Scoring接口,用来记录分数,在模式中充 ...
题外话:本人第一次写技术文章,希望寻求鼓励啊,发了四篇了一个评论还都没有,真心凉/* -------------------------------------------------正文分隔条--------------------------------------------- */上一节我们已经将Snake从原来的类中抽离出来,现在我们继续研究庞大的GamePanel类,继续封装其他的内容。现在有这样一个需求:我需要提供不同大小,不同样式的地图,可能还有一些阻挡物,然后根据需要选择地图。单单只靠GamePanel是做不到的,我们需要单独的地图类,也就是GameMap。按照上一节的思路,下 ...
通过上一节的分离我们可以使程序的流程更清楚,但是这些功能还是冗杂在一个类中,添加和修改功能的时候就要不断对这个类进行改动,而此类中涉及内容过多,在更改一个功能的时候要考虑其他功能的实现,那么这样改起来肯定是相当麻烦的。所以我们要将不同的功能封装出来,比如分数记录器,蛇,地图等。   这一节我们要做的是将蛇分离出来作为单个的类(Snake),首先看原来的代码:     package snakes; import java.awt.Color; import java.awt.Graphics; import java.awt.Point; import java.awt.e ...
 面对这么乱的代码,第一步就是把想关性不太大的部分抽离出去。具体操作:   Direction类可以从原来文件中取出,放到同一个包下; 将main函数提出,放到GameLauncher.java中; 将原来的Game类改为GamePanel,作为游戏的面板;   那么现在我们有三个文件:GameLauncher(启动程序),GamePanel(程序面板),Direction(方向类,作为工具)。     接下来我们要抽离函数。   首先构造函数:   public GamePanel () { keyMap.put(KeyEvent.VK_UP, D ...
题外话: 今天中午做到电脑前没事干,就写个贪吃蛇游戏,写着写着就发现变量太多了,函数调用太乱了,逻辑越来越混乱,于是就想重构一下。但是有想一想,干脆把重构的过程记录下来,大家也分享分享,还能提高一下知名度,何乐而不为呢? 所以……所以……我硬着头皮在不重构的情况下写完了一个简单的贪吃蛇(WTF!)     /*--------------------------------------------无耻的分隔栏----------------------------------------------------- */   介绍下功能: Swing组件完成的贪吃蛇游戏,通过键盘的 ...
在正文之前,先说点题外话。 首先,作为一名学习了2年Java的大学生,前几天才知道这个网站,这是一个损失; 其次,ITEYE的大牛真多,不知道我写完之后有多少人来吐槽; 第三,附件代码等我全写完再统一整理; 第四,还没想好,有空来补吧; 第五、第六…… /* -----------------没发现博客编辑器有分隔符,所以手写一个------------------------------------------------------ */ 关于重构,我不能说太多,因为大牛们说的比我好,随便买本书,前几章的理论就够看的了。我这里简短写点就是当做一个序,增加一下完整性。 ...
Global site tag (gtag.js) - Google Analytics