Реализация приложения-информационной системы, паттерн репозиторий
Мне нужно создать репозиторий для работы с данными, вариант задания такой: инженер, персона, главный инженер, рабочая группа. Данные загружаются из xml, json или csv. Сохранение тоже в виде файла одного из этих форматов.
Помогите понять структуру программы, пожалуйста, не совсем понимаю, как это организовать.
- Для каждого формата отдельный класс репозиторий, которые наследуются от interface IRepository?
- Инженер и главный инженер наследуются от персоны? Тогда группа - это класс с полями, например, "номер группы" и List, и мне нужно создать TeamRepository, чтобы сортировать, фильтровать, добавлять данные по группе рабочих и PersonRepository, чтобы добавлять студентов?
Простите, если вопросы очень тривиальные, только учусь и правда хочу понять!