/j02

Primary LanguageJava

J02

请先编译示例代码并运行Scene.main(),运行以下命令获得运行结果的可视化:

java -jar asciianimator.jar -f result.txt -l false -c true -fps 3

请完成以下三项任务。

任务一

本次作业的example提供了一份示例代码,实现了“老爷爷指挥七个葫芦娃按排行顺序站成一队”的场景。请仔细阅读代码并在自己的目录中撰写Readme.md,要求:

  1. 用plantuml画出example的类图与Scene中main方法执行过程中的对象时序图;
  2. 尝试从面向对象编程角度理解example的设计理念,具体阐述这样写的好处与可改进之处(越详细越好);

任务二

参考示例代码,设计自己的类型并完成“蛇精指挥256个小妖怪站成一队“的场景。要求:

  1. 每个小妖怪具有一种独特的颜色;
  2. 初始状态下小妖怪随机站成一队;
  3. 实现至少两种排序算法,将小妖怪按其颜色值排序;
  4. 如示例代码一样将排序过程可视化;
  5. 在自己的Readme.md中画出相应类图,并添加可视化结果展示链接。

任务三

将上一任务中自己写的代码,改为“蛇精指挥256个小妖怪站成一个16x16方阵“的场景。要求:

  1. 对上一任务中代码的修改应尽量小;
  2. 每个小妖怪具有一种独特的颜色;
  3. 初始状态下小妖怪随机站成16x16方阵;
  4. 实现至少两种排序算法,将小妖怪按其颜色值排序;
  5. 如示例代码一样将排序过程可视化;
  6. 在自己的Readme.md中画出相应类图,并添加可视化结果展示链接。

请在 https://asciinema.org 上注册账户并上传上述执行结果录屏。

asciicast