Surprise团队第一周项目总结

团队项目

基本内容

  • 五子棋(Gobang)的开发与应用
  • 利用Android Studio设计一款五子棋游戏,并丰富其内涵

预期目标

  • 实现人人模式:2个用户可以在同一台电脑上进行切磋下棋,即实现五子棋游戏的基本功能
  • 实现人机模式:为计算机设计五子棋算法(可以考虑分为入门级和大师级),并用代码实现,效果是人可以和计算机下棋,实现人机交互
  • 实现游客模式:即用户直接打开游戏界面选择游客模式,就可以享受游戏的乐趣了,所以满足了以上2种对战模式,基本上就解决了游客模式的难度。
  • 实现账户模式:运用数据库等相关知识,建立一个本地的账户数据库,实现对用户信息的存储与读取(用户信息可包括账户名、密码、游戏积分、游戏等级等)。
  • 实现网络编程:解决了上述本地的问题,接下来可以考虑实现2台计算机在局域网下联机对战,增加游戏的娱乐度。

实现计划

第一周

  • 确定项目内容、目标、实现计划
  • 搜集相关资料,弄清项目需求,有选择的了解相关知识
  • 确定一个基本框架,逻辑整理

第二周

  • 实现人人、人机对战模式
  • 人人相对来说比较简单,人机可能有点难度,涉及到了对五子棋算法的编程

第三周

  • 实现游客模式、账户模式
  • 需用到数据库等知识,丰富第二周成果

第四周

  • 实现网络编程
  • 考虑运用Socket网络编程知识,实现2台计算机联网对战

第五周

  • 项目程序调试及界面优化
  • 对前四周的成果进行完善调试,并对界面进行优化

成员及分工

  • 20145113林晶:负责框架搭建,项目界面优化,代码编写,资料收集与整理,博客的编写
  • 20145221高其:负责框架搭建,代码编写,程序调试,文档整理与发表,博客的编写
  • 项目托管链接:gobang

项目需求分析

两种模式

  • 游客模式
  • 账号登入模式

界面设置

  • 初始进入界面:提供用户选择登入模式,分为游客模式与账号登入模式
  • 用户选择界面:提供用户选择
    • 查看游戏规则
    • 开始人人对弈
    • 开始人机对弈
  • 游戏规则界面:查看游戏规则,并设置按钮返回首界面
  • 账号登入界面:用户进行账户的登入,并设置按钮进入用户选择界面
  • 人人对弈界面:进行对弈,设置重置选择,反悔选择,投降选择,让子选择
  • 人机对弈界面:进行对弈,设置重置选择,反悔选择,投降选择,让子选择

实现构思

  • 对于UI方面的设计:小组成员较为感兴趣,对于界面的设计与调整将会进行深入的了解
  • 对于人人对弈部分:逻辑上较好实现,难点在于需要运用Socket网络编程知识,实现2台计算机联网对战。解决:开始学习网络编程相关方面的知识。
  • 对于人机对弈部分:逻辑上存在较大的难度,需要综合分析每个棋子进行最佳落子位置的判断,小组成员将进行缜密的分析。
  • 对于账号登入部分:需要进行数据库的学习

总结

因为刚开始接触Android,对于Android的各项功能还没熟悉,所以小组决定从基础的五子棋游戏入手。进行边学习边实现边完善,在项目结束的时候,基本具备独立实现一些简单的小游戏。这个项目虽然普遍,但是在不断完善的过程中,发现问题,学习新知识,带动自己学习的动力。以小组为形式的项目开发,打破了原来的独立开发模式,选哟两个人更多的交流沟通,不同的想法与见解进行分析,整合得到更好的想法。

参考资料

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

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

    Surprise团队第二周项目总结 项目进展 已实现五子棋人人模式部分 人人模式: 基本方式:采取黑棋先行,黑白交替的下棋顺序. 模式:通过鼠标点击相应棋盘中的"交叉点",在lay ...

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

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

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

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

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

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

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

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

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

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

  7. Thunder团队第一周贡献分分配结果

    小组名称:Thunder 项目名称:爱阅app 组长:王航 成员:李传康.代秋彤.邹双黛.苗威.宋雨.胡佑蓉.杨梓瑞 第一周贡献分分配结果 此次分配与原计划的分配方案基本一致.

  8. “Hello World”团队第一周博客汇总

    时间:2017-10-13——2017-10-19 Scrum会议: 会议要求博客:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/1 ...

  9. “Hello world!”团队第一周贡献分分配结果

    小组名称:Hello World! 项目名称:空天猎 组长:陈建宇 成员:刘成志.阚博文.刘淑霞.黄泽宇.方铭.贾男男 第一周贡献分分配结果   基础分 会议分 提功能分 个人表现分 各项总分 最终分 ...

随机推荐

  1. T-Shirt 估算法

    T-Shirt Size Estimation (2015-05-11 22:58:18) 转载▼     产出:产品经理会对每一条需求评估上业务影响力的尺寸,如:XXXL 影响一千万人以上或是可以占 ...

  2. Mysql VARCHAR的最大长度到底是多少

    MySQL 数据库的varchar类型在4.1以下的版本中的最大长度限制为255,其数据范围可以是0~255或1~255(根据不同版本数据库来定).在 MySQL5.0以上的版本中,varchar数据 ...

  3. solaris tar 命令exclude使用

    压缩时需要排除指定目录,不知道什么原因在solaris中 tar cvf a.tar a --exclude=a/b/log --exclude = a/c/mm7log不生效, 最后使用了如下方法 ...

  4. java基础之 超类Object

    一.概述:       Object类是所有Java类的祖先.每个类都使用 Object 作为超类.所有对象(包括数组)都实现这个类的方法.在不明确给出超类的情况下,Java会自动把Object作为要 ...

  5. JS中的属性和变量的区别

    在很多文章中都说变量其实就是属性,但是它们之间有一定的区别,例如: 在全局作用域下, var a = "hello"; b = "hello"; 从字面上看,它 ...

  6. maven下载速度慢的解决方法(转)

    原文链接:http://blog.csdn.net/u013009618/article/details/53980983 maven是支持镜像的,我们可以在maven的conf文件加下的settin ...

  7. SQL简单语法

    (1)select SELECT 列名称 FROM 表名称 (2)distinct SELECT DISTINCT 列名称 FROM 表名称 SELECT * FROM 表名称 (3)where SE ...

  8. AppCode 2016.2.3 发布,支持 Swift3 的特性

    AppCode 2016.2.3 (build 162.2380.5)发布了,AppCode 是一个全新的 Objective-C.Swift 的集成开发环境,用于帮助开发 Mac.iPhone 和 ...

  9. Diwali

    转帖 今天是印度新年(Diwali), 全公司庆祝,午饭不要钱   一.不到美国不知道,三人行必有我师,二人行必有老印.. 一大早“春眠不觉晓,处处闻老印”:晚上遛个弯“举头望明月,低头见老印”:到山 ...

  10. c++虚函数和内联构造函数

    创建一个含有虚函数的对象时, 编译器会实现 "初始化其VPTR以指向相应的VTABLE" 这个操作 ,而实现这个操作是通过 "插入隐藏代码至构造函数中" 故此时 ...