实训总结报告

May 6, 2018


实训总结报告

GridWorld阶段1:项目启动

主要做了些基础的准备

Java小程序

使用Grid布局可以让按钮自动改变大小

简单的计算器

Part1

初步了解gridworld的运行

环境配置

配置本地ubuntu、java、ant、junit、sonar

并且掌握各工具的使用

总结

进一步学习了java,了解了swing库

使用ant,自动化处理源代码,在项目中十分使用

使用junit,批量测试输出

sonar检查代码规范,很大程度提高了我的代码规范程度


GridWorld阶段2:基本任务

基于gridworld进行开发

Part2:Bug Variations

设计走各种路线的Bug

Part3:GridWorld Classes and Interfaces

编写Jumper

Part4:Interacting Objects

基于Critter,编写各种类

Part5:Grid Data Structures

了解grid中存储所用的数据结构,编写几种grid

总结

通过编写各种类,使用gridworld.jar进行测试,进一步了解了gridworld的使用,提高了编写代码的能力。


GridWorld阶段3:扩展任务

熟悉bmp图片,设计算法

ImageProcessing

了解bmp图片的结构,对bmp文件进行处理

MazeBug

使用深度优先算法让Bug走迷宫,要求步数尽量少

N-Puzzle

使用BFSS和启发式搜索完成拼图,要求访问节点数尽量少

总结

从byte的角度解析bmp图片文件,更深入地了解了文件存储的结构

迷宫和拼图都是对算法的设计与实现,其中优化是很重要的一部分