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. 上传自己的Python代码到PyPI

    一.需要准备的事情 1.当然是自己的Python代码包了: 2.注册PyPI的一个账号. 二.详细介绍 1.代码包的结构: application \application __init__.py m ...

  2. ORA-06552: PL/SQL: Compilation unit analysis terminated ORA-06553: PLS-553: character set name is not recognized

    首先,确认字符集是否修改的不彻底.SELECT DISTINCT (NLS_CHARSET_NAME(CHARSETID)) CHARACTERSET,DECODE(TYPE#, 1, DECODE( ...

  3. 第三篇bootstrap 网格基础

    Bootstrap 提供了一套响应式.移动设备优先的流式网格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列. 网格系统类似一个表格,有行和列,它必须放置在一个类型设置为c ...

  4. PowerMockito 同时mock多个对象

    有时候,需要测试的方法内有collections结构,就需要同时mock多个对象 被测方法: public class EmployeeService { public List<Integer ...

  5. 【转】关于Oracle将小于1的数字to_char后丢掉0的解决办法

    SQL代码如下: select rtrim(to_char(0.11, 'fm9990.99'), '.') from dual; 其中0.11为需要to_char的数字fm去掉字符串前面的空格999 ...

  6. python简单文件操作

    写软件著作申请,需要将所有源代码代码贴入一个word中,在源代码前后要添加一些标记,如下: //////////////////////////// //filename1 ///////////// ...

  7. SpellTime

    如果你的应用程序允许用户输入文本,或者它结合了任何基于文本的处理,那么我们有一款你一直寻找的产品.Spell Time 允许你把个拼写检查器整合到你的产品中.该产品携带了完整的源码.Spell Tim ...

  8. js⑤

    ##返回在制定位置的的字符  var result = str.charAt(1);  console.log(result);  console.log(str[1]); ##返回在指定的位置的字符 ...

  9. 关于最少VC号数目的猜想

    [事先说明,实际的虚拟电路的实际物理链路可能同时具有多个VC号,但每段逻辑链路仅有一个VC号,一条完整虚拟路径由多个段组成] 问题描述: 在一个虚拟电路交换网络中,每个路由器的直连链路都有一个独一无二 ...

  10. 样式PC和手机页面

    /*媒体查询--当页面大于1200px时*/ @media (min-width: 1200px) { } /*在922和1199像素之间的屏幕里,中等屏幕*/ @media (min-width: ...