文章目录
一、摘要
为期5周的中级实训已经结束,整个实训大部分时间是围绕GridWorld来做的,GridWorld本身已经是一个可视化的二维网格,在上面我们做些简单的操作。围绕着GridWorld,这段时间我们完成了3阶段的工作:阶段1初步接触相应工具;阶段2完成对GridWorldCode内框架的熟悉和内容扩展;最后一部分则是基本上脱离GridWorld,用Java实现一些简单的算法(图像图层提取/BFS/DFS/A*等)
二、阶段一(第1周)
(一)实验内容介绍
第一周是入门阶段,我们主要完成了3部分的工作:
- 学习Vi/Vim,Java,Ant和Junit的相关内容,在Ubuntu上熟悉了相关环境,然后完成了相应的HelloWorld程序的编写(Java)、自动编译运行(Ant)以及测试(Junit),并写了一份相应的自学报告。
- 学习SonarQube代码分析工具的使用,并用Java实现了简单的计算器小程序(可实现整数的四则运算),利用SonarQube加以分析代码质量
- 从Github上下载了GridWorld的代码框架,完成环境配置并编译运行
BugRunner.java

(二)实验感想
由于之前并没有选上Java课,所以一开始接触实训内容的时候是有些懵的,在第1阶段我也花了很久的时间在Java部分的学习上。也幸亏有这么一周的缓冲让我对Java内容有了基础的了解,不至于后面没什么基础就直接开始写比较多的代码。另外,我对这次实验用到的这些工具也有了基本的了解:
- Vi编辑器是Unix/Linux操作系统下都有的一种标准编辑器,就像Windows下都会有标准的记事本,完全命令行操作,熟悉使用的话比较方便,但刚上手的话需要记住很多指令。
- Ant是一种自动编译生成工具,可用于Java语言的开发,需要编写build.xml文件来执行,就类似C/C++语言开发中的make工具。
- Junit是Java的一种单元测试框架工具,可以用于Java的开发,属于测试驱动的范畴,在编写的Test类中可以分成多个部分进行测试,以我们的阶段3的ImageReader项目为例,最后测试结果截图如下,测试直接提示每一部分的成功与失败。

- SonarQube则是一款用于代码质量管理的开源工具,它主要用于管理源代码的质量。 通过插件形式,可以支持众多计算机语言,Java是其中的一种,启动sonar服务器后,在项目配置文件所在目录下执行sonar-runner即可启动检测