swift

Услуга (Service)

Нужно создать услугу в студии красоты — это фиксированный набор характеристик:

Нужно описать словами поведение услуги, что бы понять её лучше.

Есть ли необходимость делить одну услугу на нескольких посетителей ? что бы каждый из них её между собой шарил или услуга – это один, независимый объект.

Планируется ли сложная логика внутри услуги ? будет ли она управлять какими-то объектами или это просто тупо набор полей с описанием услуги.

Клиент (Client)

Заполни самостоятельно и подумай какое планируется у него поведение.

Клиент не обязательно всегда это класс или структура. Выбор типа данных зависит от конкретного случая.

Мастер (Master)

Мастер — это человек, который работает, меняет статус, принимает клиентов

В отличии от услуг – мы не можем просто насоздавать мастеров и забыть про них – они участники сложного, меняющегося процесса. Они управляют состоянием как сессий процедур так и своим состоянием. Могут много чего

Он как минимум должен знать о списке сеансов на сегодня, иметь возможность добавить новый сеанс в список.

Он должен уметь уйти на обед, а на всех экранах мы должны понимать, что мастер теперь в статусе “Не доступен”

Нужно везде вывести принты, что бы было ощущение полноценной работы и можно было проконтролировать ожидания

Запись

Нужно создать данные о записи в студию красоты —

Управление сеансом записи (BookingSession)

Когда клиент записывается, мы собираем данные шаг за шагом: выбрал услугу, выбрал мастера, выбрал время. Это процесс, который идёт последовательно. Нам нужно несколько отдельных экранов, что бы это всё заполнить.

В сеансе записи мы должны знать о:

Сеанс записи может быть в статусе: Запланирован, Идёт, Отменён, Окончен

Мастер, очевидно, должен работать с сеансами – он может перевести сеанс в статус “Идёт”, “Окончен” и тд

Условно – функция у мастера, которая берёт первый сеанс и выводит принт “Сеанс с таким-то именем для клиента такого-то взят в работу…”

Вообще – ты вольна самостоятельно выбрать нужное поведение. Добавить / Убрать какие-то поля, функции. Важно уметь для начала описать словами какое поведение ты ожидаешь.