win8 开发之旅(4) --五子棋游戏开发 面向对象的分析

简介:

  上节说到剖析五子棋的任务从这节开始,那确实。

     其实,这节的任务很简单,就是 以完全面向对象的思想来分析这个小游戏。  

     对于面向对象,对于开发人员,一定不再陌生,这里就不再赘述。

      那他需要哪些类了。 

        一个黑棋子,一个白棋子,他是不是有许多的属性 是一样的,因此我们这里抽象出一个piece 包含位置,类型等等属性

        这些棋子在哪玩,是不是棋盘上。因此,我们需要棋盘类(pieceboard)类来体现所谓的棋盘。

        怎么来存储相应五子棋的结果了,因此我们需要winningResult类存储相应结果。              

       你会问我怎么来控制游戏开展的,我这里是基于mvc的思想

       我这里是一个通过一个比如PieceMediator 来监听PieceProxy 变化,而PieceProxy 监上面的Piece的变化。最终的当家是ApplicationFacede组织所有监听者的变化。

       对啊,我真的忘了,上节说到了ai,我要介绍ai部分,一个ai类组织了  相应人工智能的算法。

      而ai需要一个Rule类, 判断相应的水平,竖直方向,斜线方向是否是相连。

       那我再看相应的类图的架构:

            你还会问我,我介绍非常的笼统。   那个PieceType,WinningType 是枚举的  为什么需要xxcomponent 这相当于  view 层,对于相应的model层,

          通过pages把xxcomponent   串联起来。    这样就能玩了哟

           当然,这还不是纯粹的mvc的思想,在xxMediator 类 还要需要 访问跨页面的调用相应控件。 最好的方法是利用mvvm来重构,恳请大家谅解,

    并给我意见。

目录
相关文章
|
人工智能 安全 Unix
游戏编程之九 设计工具之游戏引擎
游戏编程之九 设计工具之游戏引擎
87 0
|
机器学习/深度学习 人工智能 程序员
挑战自己,编程你的五子棋:Python+Pygame实践经验分享
挑战自己,编程你的五子棋:Python+Pygame实践经验分享
156 1
挑战自己,编程你的五子棋:Python+Pygame实践经验分享
游戏开发零基础入门教程(1):先对游戏有个概念
首先回答第一个问题,是的,学完这个教程后,你能够做出自己的游戏。这里,有一点儿地方需要澄清一下,“做出来”跟“能够做出来”是完全不同的,“做出来”是既定的事实,去做了,并且做出来了。而“能够做出来”只是一种想象,前提是要先“去做”。
268 0
|
监控 Windows
VB游戏开发#001植物大战僵尸小游戏开发思路说明及源码
VB游戏开发#001植物大战僵尸小游戏开发思路说明及源码
409 0
|
存储 算法 前端开发
50行Python代码实现经典游戏,不仅是划水神器,更是学习利器!
Free Python Games非常适合学生,它不仅具有高度的组织性和灵活性,而且能够激发人们探索和理解能力。--Terri Furton Free Python Games在轻松的环境中把游戏和学习结合在一起,从而减轻了编程过程中的压力。--Brett Bymaster ...
50行Python代码实现经典游戏,不仅是划水神器,更是学习利器!
下一篇
DataWorks