Skip to content
This repository has been archived by the owner on Sep 11, 2022. It is now read-only.

mmmlpmsw/programming_lab5

Repository files navigation

programming_lab5

Задание : Реализовать на базе программы из лабораторной работы №4 консольное приложение, которое реализует управление коллекцией объектов в интерактивном режиме. Номенклатуру сохраняемых в коллекции объектов необходимо заранее согласовать с преподавателем. Разработанная программа должна удовлетворять следующим требованиям:

  • Класс, коллекцией экземпляров которого управляет программа, должен реализовывать сортировку по умолчанию.
  • Для хранения необходимо использовать коллекцию типа java.util.Stack.
  • При запуске приложения коллекция должна автоматически заполняться значениями из файла.
  • Имя файла должно передаваться программе с помощью переменной окружения.
  • Данные должны храниться в файле в формате json.
  • При остановке приложения текущее состояние коллекции должно автоматически сохраняться в файл.
  • Чтение данных из файла необходимо реализовать с помощью класса java.io.FileReader.
  • Запись данных в файл необходимо реализовать с помощью класса java.io.BufferedWriter.
  • Все реализованные команды (см. ниже) должны быть задокументированы в формате javadoc.
  • Формат задания объектов в командах - json.

В интерактивном режиме программа должна поддерживать выполнение следующих команд:

  • add {element}: добавить новый элемент в коллекцию
  • remove_first: удалить первый элемент из коллекции
  • remove_greater {element}: удалить из коллекции все элементы, превышающие заданный
  • show: вывести в стандартный поток вывода все элементы коллекции в строковом представлении
  • info: вывести в стандартный поток вывода информацию о коллекции (тип, дата инициализации, количество элементов и т.д.)
  • load: перечитать коллекцию из файла
  • remove {element}: удалить элемент из коллекции по его значению Отчёт по работе должен содержать:
  1. Текст задания.
  2. Диаграмма классов разработанной программы.
  3. Исходный код программы.
  4. Выводы по работе.

Releases

No releases published

Packages

No packages published

Languages