注意:本笔记为实验Lab1的思考与总结,是对报告的精简以及实验过程的反思,并非报告原文!
1.实验目标概述
本次实验通过求解三个问题,训练基本 Java 编程技能,能够利用 Java OO 开发基本的功能模块,能够阅读理解已有代码框架并根据功能需求补全代码,能够为所开发的代码编写基本的测试程序并完成测试,初步保证所开发代码的正确性。另一方面,利用 Git 作为代码配置管理的工具,学会 Git 的基本使用方法。
⚫ 基本的Java OO编程
⚫ 基于Eclipse IDE进行Java编程
⚫ 基于JUnit的测试
⚫ 基于Git的代码配置管理
2.实验环境配置
在git的官网下载Git Bash,在Github网站注册账号,并将账号与本地的Git Bash互换ssh密钥,之后连接好仓库
受同学推荐在IDEA的官网下载安装了IDEA,并利用其自带的Jdk和JUnit配置了环境,然而IDEA本身的汉字编码似乎有些问题,在CMD中用java -jar命令和在eclipse直接打开(而不是拷贝代码)的情况下,输出的汉字是全部是乱码,希望看到这里的助教老师能用复制粘贴等靠谱的方式运行那些代码,而不是因汉字乱码扣掉。
3.实验过程
3.1Magic Squares
任务要求:
①编写函数isLegalMagicSquare()判断5个txt文件中的矩阵是否为幻方(行列数相同,行和列和对角和相等);
②画流程图添加注释分析函数generateMagicSqare();
③扩展函数generateMagicSqare(),为其增加报错功能和文件写入功能,将最终生成的幻方写入文件6.txt中。
总结反思:
考察对文件的处理操作——我学到了用BufferedReader类来处理。
考察判断是否用指定字符'\t'分割——我学到了用line.split函数来处理。
考察对错误的处理——我学到了用try-catch体系来处理。
3.2Turtle Graphics
任务要求:
①完成正方形绘制、多边形绘制、bearings计算、凸包算法等函数的编写;
②用git完成版本管理并上传。
总结反思:
考察对类的引用——我更熟练地掌握了类的用法。
考察对git的使用——我学到了一些git的指令。
3.3Social Network
任务要求:
①设计一个FriendshipGraph类和Person类,Person的对象充当FriendshipGraph函数中的变量;
②在Friendship里完成对两点间最短路径的计算。
总结反思:
考察对类的编写——我学到了类的属性与函数的不同。
考察图两点间最短路径算法——我更熟练地掌握了BFS计算方法。
4.总结
通过本次实验,我对IDEA这款IDE,Git这款版本控制工具,Java的编写规范及其中部分类的功能都有了更深的理解,对于其中重大的知识点我会在之后进一步自学并试着写出学习笔记。