Surprise团队第二周项目总结
Surprise团队第二周项目总结
项目进展
- 已实现五子棋人人模式部分
- 人人模式:
- 基本方式:采取黑棋先行,黑白交替的下棋顺序。
- 模式:通过鼠标点击相应棋盘中的“交叉点”,在
layout
中设计相关界面的一些控件,将界面与代码部分“关联”起来即可实现。 - 界面:关于界面的设置,我们项目小组找了一些图片作为背景图案,通过
activity_main.xml->Design
设置初始界面的一些Button
控件,供用户点击选择。 - 算法:用户的落子点是随机的,只要是棋盘上可点击的交叉点即可。算法的关键部分应该是,如何判断获胜。获胜的条件是,相同的颜色能在横、竖、斜任一一种情形下满足5子即可。所以,每当用户落子之后,算法就应该判断一下是否存在有5子满足上述情形,如果有,则游戏结束,没有,则轮另一方落子。除此之外,算法应该考虑用户落子的地方原本就有棋子的情形,遇到这种情况,对于界面来说应该是不会做任何改变,直到落子处无子,对于代码段来说,则该处的棋子不应该被覆盖,且继续该这个用户落子。
成员贡献
- 20145113林晶:五子棋界面的UI设计,部分代码的实现
20145221高其:五子棋算法的研究与设计,部分代码的实现
本周成果
改进措施
- 界面美观性还待优化,交互实现还需更加用户友好性
计划实施情况
人机部分的算法还在研究中……
总结
- 在运用Android Studio编写代码时,总感觉不稳定,有时我们小组对之前的界面不满意,准备换一个界面,然后重启安卓虚拟机时,就会重新冒出各种各样的小问题,然后又只有慢慢的调,看看是不是哪块逻辑出了问题。
- 这周还是遇到了很多小问题,看来我们对Android Studio还是不够熟练,在后续的项目中,我们不仅要加强对五子棋算法的学习,还应该多看看有关Android Studio开发的一些书籍和技术博客。
参考资料
Surprise团队第二周项目总结的更多相关文章
- Surprise团队第一周项目总结
Surprise团队第一周项目总结 团队项目 基本内容 五子棋(Gobang)的开发与应用 利用Android Studio设计一款五子棋游戏,并丰富其内涵 预期目标 实现人人模式:2个用户可以在同一 ...
- #ZLYD团队第二周项目总结
ZLYD团队第二周项目总结 项目进展 确定项目内容.目标.实现计划 首先确定游戏界面的游戏区域中墙的位置,绘制其图形,并通过其中的方法,返回墙壁的位置等属性. 根据豆子的位置,绘制其图形. 初始化吃豆 ...
- Cooperation.GTST团队第二周项目总结
项目进展 这周我们把工作主要放在了UI界面的实现上,为了让整款APP看上去能够更加高大上,我们决定采用Android 5.0开始推出的一个Material Design风格的导航控件Toolbar. ...
- Javaworkers团队第二周项目总结
本周项目进展 本周我们小组成员在图书馆和网上查阅了很多资料,基本达到了预期的计划,完成了项目框架设计及代码模块设计. 设计思路 1.首先,根据用户需求合理分配代码密度,即: 用户直接操作(点击运行)的 ...
- Surprise团队第四周项目总结
Surprise团队第四周项目总结 项目进展 这周我们小组的项目在上周的基础上进行了补充,主要注重在注册登录界面的改进优化与美观,以及关于人计算法的学习与初步实现. 我们小组针对上次APP中界面出现的 ...
- Cooperation.GTST团队第一周项目总结
Cooperation.GTST团队第一周项目总结 团队项目 项目内容:我们打算利用Android Studio开发一款博客园的Android APP,初步设想能够实现在Android手机平台使用博客 ...
- ZLYD团队第一周项目总结
ZLYD团队第一周项目总结 团队项目 项目内容:我们打算利用Applet实现一个吃豆子游戏,团队初步设定游戏规则如下: 按空格键,游戏开始: 通过方向键控制吃豆者的运动方向,直到吃光所有金豆子: 吃到 ...
- “Hello world!”团队第二周贡献分规则+贡献分数分配结果
一.贡献规则制定: (1)基础分:9 , 9 , 8 , 7 , 7 , 7 , 6(按在本次编程中承担模块的重要度制定,某一模块重要度的认定通过组内开会讨论决定) (2)会议分:每人没出勤一次会议记 ...
- Javaworkers团队第一周项目总结
项目名称:游戏贪吃蛇 项目介绍: 贪吃蛇是一款相当经典的小游戏,我们团队决定用我们现有的java知识来实现它. 具体设计: 对象:蛇.果实 方向键:控制蛇的运动. 空格键:暂停游戏 ESC:推出游戏( ...
随机推荐
- 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 不支持使 ...
- Eclipse - 修改默认user和类的创建日期
1.找到eclipse.ini文件 2.在文件中找到 -vmargs -Duser.name=xxxxxxxx 3.修改xxxxxxxx为你的名字 4.eclipse中:Window -> Pr ...
- 关于Erlang中的behaviour
唔,听说过这四个牛逼渣渣的behaviour:gen_server,gen_fsm,gen_event,supervisor.所以也就更加好奇behaviour的实现. 在解释它是怎么工作的之前,我们 ...
- VisualSVN 4.0.12补丁原创发布
VisualSVN 4.0.12补丁原创发布
- hihoCoder#1082
刚开始学习C语言,准备在做hiho的题目的过程中来学习,在此进行记录,如果代码中有错误或者不当的地方还请指正. 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 fjxmlh ...
- STM32——CAN通讯实现
CAN通讯的实现步骤: 1.CAN初始化,其中包括:a.配置CAN时钟,配置IO: b.使能CAN中断向量: c.CAN硬件寄存器配置初始化: d.过滤器初始化: e.打开CAN中断. 2.CAN发送 ...
- TestNG插件的安装问题
一.可以采用离线安装的方式 离线安装若不成功,可以删除之前的eclipse,然后在新下载eclipse中添加离线安装包 1.离线安装方法: 发现很多同学和我一样无法在线安装testNg,现在分享一个离 ...
- innerHTML属性
<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...
- String类型和基本数据类型之间的转换
Java 中基本类型和字符串之间的转换 在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换. 其中,基本类型转换为字符串有三种方法: 1. 使用包装类的 toString() 方法 2. 使 ...
- UIProgressView改变高度
CGAffineTransform transform = CGAffineTransformMakeScale(1.0f, 3.0f); progressView.transform = trans ...