Объектно ориентированный дизайн

Задача группы проектировщиков — создать иллюзию простоты.

Буч Г.

Какие сущности вы видите сейчас в коде? В предыдущей главе мы попытались разграничить код с помощью функций. Но это не дает нам достаточно точного описания объектов, с которыми мы работаем. Из-за этого мы не всегда можем понять четкой обязанности той части кода, с которой работаем.

В том маленьком примере, который мы сейчас используем, я бы не стал делать что-то ещё. Но нам нужно, во-первых, оправдать потребность в ООП, во-вторых, придумать такую задачу, которая задала бы вектор направления.

Начну с Анекдота:
“Заходит заказчик в бар и не знает, что выпить.”

Продолжу тем, что к вам подошёл заказчик (и вы не бармен) и просит сделать изменения в программе следующего порядка:

  • Добавить новую команду, которая выводит список всех доступных команд;
  • Сделать команду перехода в административный режим. После перехода в режим администратора все покупки становятся бесплатными.

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

Если вы нашли ошибку, пожалуйста выделите её и нажмите Ctrl+Enter.


Leave a Reply

Your email address will not be published. Required fields are marked *