Books by Pharotales
**FairyTales Library by Pharotales**
_"Every object has a story"_
Цей проєкт реалізує модель бібліотеки казок у середовищі **Pharo Smalltalk**.
Завдання:
1. **Моделювання сутностей**
- **FairyTale**: автор, назва, видавництво, рік видання, кількість сторінок.
- **StoryBook**: наслідує FairyTale, додатково містить кількість ілюстрацій (на окремій сторінці).
- **TaleCollection**: наслідує FairyTale, містить кількість томів і кількість сторінок у кожному томі.
Кожен клас повинен мати:
- метод виведення інформації в потік;
- методи порівняння за обсягом книги;
- арифметичні методи для роботи з обсягом (наприклад, додавання сторінок).
Примітка: кількість друкованих аркушів обчислюється як загальна кількість сторінок / 32.
2. **Робота з колекцією книг**
- Створити щонайменше 5 різних книг і занести їх у контейнер.
- Забезпечити можливість додавати нові книги через діалоговий ввід.
- Надрукувати всі книги в колекції.
- Знайти книгу з найбільшим обсягом та перевірити, чи є вона багатотомником.
- Продемонструвати використання арифметичних операцій на книгах.
- Створити нову колекцію, що містить книги певного автора.
3. **Збереження та завантаження**
- Зберігати створені об’єкти до файлу (у різних форматах).
- Завантажувати книги з файлу.
- Створити базу даних у пам’яті для збереження та завантаження книг.
Над створенням ієрархії працювала команда **Pharotales**:
1. **Селіверстова Анастасія**<br>
Обов'язки: створення GitHub репозиторію, його підключення та заповнення README файлу; реалізація класів FairyTale та UsageExamples; підключення бази даних.
2. **Волощук Лілія**<br>
Обов'язки: реалізація класу TaleCollection та написання тестів до нього; робота над графічним інтерфейсом.
4. **Купчак Олена**<br>
Обов'язки: реалізація класу StoryBook; написання тестів до FairyTale та StoryBook; робота над графічним інтерфейсом.
5. **Філіппова Вероніка**<br>
Обов'язки: створення Playground для демонстрації роботи з колекцією книг та базою даних; робота над графічним інтерфейсом.
Щоб завантажити проєкт виконайте:
Metacello new
baseline: 'Pharotales_Books';
repository: 'github://neAnasteisha/Pharotales_Books/src';
load.