Files
aston-team-project/docs/tasks/DataSource.md
T

45 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Техническое задание: заполнение коллекции
## Задача
Реализовать разные способы заполнения `MyList<Student>` данными.
## Требования
1. Создать интерфейс `DataSource` с методом:
```text
fill(int size)
```
2. Реализовать три способа заполнения:
- `ManualDataSource` — ручной ввод;
- `RandomDataSource` — случайная генерация;
- `FileDataSource` — чтение из файла.
3. Результатом работы каждого источника должна быть коллекция `MyList<Student>`.
4. Для создания объектов `Student` использовать `StudentBuilder`.
5. Все данные должны проходить валидацию средствами `Student`.
6. При ручном вводе некорректные данные не должны добавляться в коллекцию.
7. При чтении из файла некорректные строки должны обрабатываться без создания невалидных объектов `Student`.
8. Размер коллекции должен задаваться пользователем и соблюдаться при заполнении.
9. Не использовать стандартные коллекции `List`, `ArrayList`, `LinkedList` для хранения результата.
## Результат
```text
DataSource.java
ManualDataSource.java
RandomDataSource.java
FileDataSource.java
```
Классы не должны содержать логику сортировки или пользовательского меню.