NoWarningNoError队

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

CSDN发布时间:2018年04月11日 11:13:52

 

    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行,前端设计进度为登陆、注册界面。

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

posted on 2018-04-11 11:54  NoWarningNoError队  阅读(367)  评论(1编辑  收藏  举报