Задача «Данные о футбольном чемпионате»

Реализовать систему хранения информации о футбольном чемпионате. Информация опирается на следующие основные классы: Team (команда), Player (игрок), Match (матч). Эти классы связаны друг с другом посредством агрегации, ассоциации и проч.

Атрибуты классов

Team

  • id — уникальный численный идентификатор.
  • name — имя.
  • players — игроки, играющие за данную команду в рамках чемпионата.

Player

  • id — уникальный численный идентификатор.
  • name — имя
  • team – команда.

Match

  • id — уникальный численный идентификатор.
  • date — дата.
  • location — место.
  • result — счёт.
  • team1 — первая команда.
  • team2 — вторая команда.
  • players – игроки, у частвовавшие в матче.

Обеспечить загрузку и сохранение этой базы данных в текстовый файл формата TSV (Tab-Separated Values). Каждая строка в этом файле должна начинаться со слов team, player, match. Далее будут идти необходимые атрибуты.

Для сохранения и восстановления связей между различными объектами использовать поля id. Например, в строке с записью о матче можно сохранить team1_id и team2_id, а после загрузки всего файл создать связь с реальным объектом.