代码编写阶段

代码编写阶段

    3月29日会议之后,后端进入了代码实现的阶段,而前端也开始也具体的界面设计。

    此后小组集中讨论了三次,会议的主要内容即是编写代码并且解决技术问题,每次内容不多,因此集中发布。


讨论时板书图   

    主要解决的技术问题如下:

后端

    1、Map的数据结构

    MapChecker方面,地图的具体存储结构为有向图,用以下存储结构实现:


    地图节点存储每个节点拥有的各项属性以及一个弧节点数组。

    而弧节点则存放弧尾和权值。

    上图的数据结构产生的地图示意图如下:

   

    数据结构定义代码:

class MapUnit{
    int mark;     //The sign ofh a unit
    MapEdge[] edg;   //The  connect edg
    int height;    //The height of the unit
    int is_factor;  //Judge the map status
    Factor  key;    //Store the important thing
}

class MapEdge{
    int adjedg;   //The other unit sign
    int distance;  //The length of the edg
}

2、序列化和反序列化

某些静态的对象(比如地图、人物)可以通过文件的方式存储,需要用到时再在程序中读取。要达到这样的效果,需要写入文件和读取文件的格式完全相同,且要将文件中的内容转化成在代码中有意义的量。

我们使用了序列化的方式进行存储,读取时,对文件进行反序列化。

java本身提供了序列化和反序列化的方法,详见:http://www.runoob.com/java/java-serialization.html

3、位图/位向量

位图不同于计算机图形学中的位图,此处的位图指的是用于存储多个布尔型变量的数据结构。

这种数据结构可以充分利用小空间存储大量数据,当有大量的布尔型变量要处理时,可以申请一个int数组,每一个元素代表一个布尔型的值,通过位运算来获取或修改布尔型的值。

4、单元测试

每个人对自己编码的部分编写单元测试,建立对应的test类,并为单元测试单独编写main函数运行测试获取结果。

前端

前端主要问题在于设计,技术方面,主要有两个问题。

1、javascript

JS描述了网页的行为,因此前端在学习HTML5、CSS的同时需要学习JS的运用。

2、Ajax

前端与服务器的交流,使用Ajax(Asynchronous JavaScript and XML),详见http://www.runoob.com/ajax/ajax-tutorial.html.

目前后端代码量在400-500行,前端设计进度为登陆、注册界面。

进度略有些慢,我们将加快进度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值