Surprise团队第二周项目总结

项目进展

  • 已实现五子棋人人模式部分
  • 人人模式:
    • 基本方式:采取黑棋先行,黑白交替的下棋顺序。
    • 模式:通过鼠标点击相应棋盘中的“交叉点”,在layout中设计相关界面的一些控件,将界面与代码部分“关联”起来即可实现。
    • 界面:关于界面的设置,我们项目小组找了一些图片作为背景图案,通过activity_main.xml->Design设置初始界面的一些Button控件,供用户点击选择。
    • 算法:用户的落子点是随机的,只要是棋盘上可点击的交叉点即可。算法的关键部分应该是,如何判断获胜。获胜的条件是,相同的颜色能在横、竖、斜任一一种情形下满足5子即可。所以,每当用户落子之后,算法就应该判断一下是否存在有5子满足上述情形,如果有,则游戏结束,没有,则轮另一方落子。除此之外,算法应该考虑用户落子的地方原本就有棋子的情形,遇到这种情况,对于界面来说应该是不会做任何改变,直到落子处无子,对于代码段来说,则该处的棋子不应该被覆盖,且继续该这个用户落子。

成员贡献

  • 20145113林晶:五子棋界面的UI设计,部分代码的实现
  • 20145221高其:五子棋算法的研究与设计,部分代码的实现

    本周成果

改进措施

  • 界面美观性还待优化,交互实现还需更加用户友好性

计划实施情况

人机部分的算法还在研究中……

总结

  • 在运用Android Studio编写代码时,总感觉不稳定,有时我们小组对之前的界面不满意,准备换一个界面,然后重启安卓虚拟机时,就会重新冒出各种各样的小问题,然后又只有慢慢的调,看看是不是哪块逻辑出了问题。
  • 这周还是遇到了很多小问题,看来我们对Android Studio还是不够熟练,在后续的项目中,我们不仅要加强对五子棋算法的学习,还应该多看看有关Android Studio开发的一些书籍和技术博客。

参考资料

Surprise团队第二周项目总结的更多相关文章

  1. Surprise团队第一周项目总结

    Surprise团队第一周项目总结 团队项目 基本内容 五子棋(Gobang)的开发与应用 利用Android Studio设计一款五子棋游戏,并丰富其内涵 预期目标 实现人人模式:2个用户可以在同一 ...

  2. #ZLYD团队第二周项目总结

    ZLYD团队第二周项目总结 项目进展 确定项目内容.目标.实现计划 首先确定游戏界面的游戏区域中墙的位置,绘制其图形,并通过其中的方法,返回墙壁的位置等属性. 根据豆子的位置,绘制其图形. 初始化吃豆 ...

  3. Cooperation.GTST团队第二周项目总结

    项目进展 这周我们把工作主要放在了UI界面的实现上,为了让整款APP看上去能够更加高大上,我们决定采用Android 5.0开始推出的一个Material Design风格的导航控件Toolbar. ...

  4. Javaworkers团队第二周项目总结

    本周项目进展 本周我们小组成员在图书馆和网上查阅了很多资料,基本达到了预期的计划,完成了项目框架设计及代码模块设计. 设计思路 1.首先,根据用户需求合理分配代码密度,即: 用户直接操作(点击运行)的 ...

  5. Surprise团队第四周项目总结

    Surprise团队第四周项目总结 项目进展 这周我们小组的项目在上周的基础上进行了补充,主要注重在注册登录界面的改进优化与美观,以及关于人计算法的学习与初步实现. 我们小组针对上次APP中界面出现的 ...

  6. Cooperation.GTST团队第一周项目总结

    Cooperation.GTST团队第一周项目总结 团队项目 项目内容:我们打算利用Android Studio开发一款博客园的Android APP,初步设想能够实现在Android手机平台使用博客 ...

  7. ZLYD团队第一周项目总结

    ZLYD团队第一周项目总结 团队项目 项目内容:我们打算利用Applet实现一个吃豆子游戏,团队初步设定游戏规则如下: 按空格键,游戏开始: 通过方向键控制吃豆者的运动方向,直到吃光所有金豆子: 吃到 ...

  8. “Hello world!”团队第二周贡献分规则+贡献分数分配结果

    一.贡献规则制定: (1)基础分:9 , 9 , 8 , 7 , 7 , 7 , 6(按在本次编程中承担模块的重要度制定,某一模块重要度的认定通过组内开会讨论决定) (2)会议分:每人没出勤一次会议记 ...

  9. Javaworkers团队第一周项目总结

    项目名称:游戏贪吃蛇 项目介绍: 贪吃蛇是一款相当经典的小游戏,我们团队决定用我们现有的java知识来实现它. 具体设计: 对象:蛇.果实 方向键:控制蛇的运动. 空格键:暂停游戏 ESC:推出游戏( ...

随机推荐

  1. MySQL----This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery

    This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'的意思是,这版本的 MySQL 不支持使 ...

  2. Eclipse - 修改默认user和类的创建日期

    1.找到eclipse.ini文件 2.在文件中找到 -vmargs -Duser.name=xxxxxxxx 3.修改xxxxxxxx为你的名字 4.eclipse中:Window -> Pr ...

  3. 关于Erlang中的behaviour

    唔,听说过这四个牛逼渣渣的behaviour:gen_server,gen_fsm,gen_event,supervisor.所以也就更加好奇behaviour的实现. 在解释它是怎么工作的之前,我们 ...

  4. VisualSVN 4.0.12补丁原创发布

    VisualSVN 4.0.12补丁原创发布

  5. hihoCoder#1082

    刚开始学习C语言,准备在做hiho的题目的过程中来学习,在此进行记录,如果代码中有错误或者不当的地方还请指正. 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 fjxmlh ...

  6. STM32——CAN通讯实现

    CAN通讯的实现步骤: 1.CAN初始化,其中包括:a.配置CAN时钟,配置IO: b.使能CAN中断向量: c.CAN硬件寄存器配置初始化: d.过滤器初始化: e.打开CAN中断. 2.CAN发送 ...

  7. TestNG插件的安装问题

    一.可以采用离线安装的方式 离线安装若不成功,可以删除之前的eclipse,然后在新下载eclipse中添加离线安装包 1.离线安装方法: 发现很多同学和我一样无法在线安装testNg,现在分享一个离 ...

  8. innerHTML属性

    <!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...

  9. String类型和基本数据类型之间的转换

    Java 中基本类型和字符串之间的转换 在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换. 其中,基本类型转换为字符串有三种方法: 1. 使用包装类的 toString() 方法 2. 使 ...

  10. UIProgressView改变高度

    CGAffineTransform transform = CGAffineTransformMakeScale(1.0f, 3.0f); progressView.transform = trans ...