Skip to content

Repository files navigation

Бэкенд-разработчик — Тестовое задание

Готовое задание прислать ссылкой на репозиторий в GitHub.

Задание: симулятор деревенской жизни на ООП

Летом, чтобы отдохнуть от городской суеты, вы поехали к дяде на ферму. Через несколько дней отдых вам наскучил, и вы решили поупражняться в программировании. Зайдя в хлев, где живут коровы и куры, и увидев как работает автоматический сборщик молока и яиц, вы решили описать его работу в парадигме ООП.

Исходные данные

  • В хлеву живут 10 коров и 20 кур;
  • Корова может давать 8-12 литров молока за один надой;
  • Курица может нести 0-1 яйцо за одну кладку;
  • У каждой коровы и курицы на ферме есть уникальный регистрационный номер.

Задача

Реализовать, используя php8 + Laravel , объектно-ориентированную систему: прототип сбора продукции. Реализовать структуру классов, задействовать механизм наследования.

  • Класс фермы (Farm) должен быть автономным, сам вести учёт номеров животных, сбор и подсчет продукции.
  • Решение должно быть расширяемым, добавление новых типов животных и продукции не должно приводить к модификации непосредственно класса Farm.
  • Способ первичной инициализации списка животных - на ваше усмотрение.
  • Если в условиях вам не хватает каких-то данных, опирайтесь на здравый смысл.

Система должна уметь:

  • Добавлять животных в хлев поштучно;
  • Собирать продукцию у всех животных, зарегистрированных в хлеву;
  • Подсчитывать общее кол-во собранной продукции;

Реализация графического интерфейса не требуется.

Реализация хранения данных в БД или файлах не требуется.

Задание рассчитано на проверку навыков работы с ООП и фреймворком Laravel.

Результат запуска скрипта

При запуске скрипта php artisan farm:life в консоли:

  • Система должна добавить животных в хлев (10 коров и 20 кур).
  • Вывести на экран информацию о количестве каждого типа животных на ферме.
  • 7 раз (неделю) произвести сбор продукции (подоить коров и собрать яйца у кур).
  • Вывести на экран общее кол-во собранной за неделю продукции каждого типа.
  • Добавить на ферму ещё 5 кур и 1 корову (съездили на рынок, купили животных).
  • Снова вывести информацию о количестве каждого типа животных на ферме.
  • Снова 7 раз (неделю) производим сбор продукции и выводим результат на экран.

About

Ферма с животными

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages