CSDN发布时间:2018年04月11日 11:13:52javascript
3月29日会议以后,后端进入了代码实现的阶段,而前端也开始也具体的界面设计。html
此后小组集中讨论了三次,会议的主要内容便是编写代码而且解决技术问题,每次内容很少,所以集中发布。前端
讨论时板书图
java
主要解决的技术问题以下:ajax
一、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
}
二、序列化和反序列化
某些静态的对象(好比地图、人物)能够经过文件的方式存储,须要用到时再在程序中读取。要达到这样的效果,须要写入文件和读取文件的格式彻底相同,且要将文件中的内容转化成在代码中有意义的量。
咱们使用了序列化的方式进行存储,读取时,对文件进行反序列化。
java自己提供了序列化和反序列化的方法,详见:http://www.runoob.com/java/java-serialization.html。
三、位图/位向量
位图不一样于计算机图形学中的位图,此处的位图指的是用于存储多个布尔型变量的数据结构。
这种数据结构能够充分利用小空间存储大量数据,当有大量的布尔型变量要处理时,能够申请一个int数组,每个元素表明一个布尔型的值,经过位运算来获取或修改布尔型的值。
四、单元测试
每一个人对本身编码的部分编写单元测试,创建对应的test类,并为单元测试单独编写main函数运行测试获取结果。
前端主要问题在于设计,技术方面,主要有两个问题。
一、javascript
JS描述了网页的行为,所以前端在学习HTML五、CSS的同时须要学习JS的运用。
二、Ajax
前端与服务器的交流,使用Ajax(Asynchronous JavaScript and XML),详见http://www.runoob.com/ajax/ajax-tutorial.html.
目先后端代码量在400-500行,前端设计进度为登录、注册界面。
进度略有些慢,咱们将加快进度。