Реализовать объектную модель: Яблоко, Дерево, Сад. Цель: оценить умение проектирования и реализации объектных моделей Язык: JS или PHP на выбор
Программа должна уметь добавлять деревья в сад и яблоки на деревья. Возвращать информацию о количестве деревьяв и яблок.
Сад - это объект со списком объектов деревьев. Дерево - это объект со списком объектов яблок. Яблоки должны иметь определяться:
- возрастом
- цветом
- размером
- флаг испорченности (0 - свежее, 1 - испорченное)
- флаг упавшего с дерева (0 - на дереве, 1 - упало)
Каждые 30 суток на каждом дереве рождается новое яблок. Все яблоки каждые сутки стареют на 1 день. Яблоки падают с дерева при возрасте 30 дней. Можно усложнить - 50% яблок могут упасть через 28 или через 32 дня по случайному выбору. Яблоки портятся, после падения через сутки
Сад имеет метод: просчитать 1 сутки (т.е. метод, который фиксирует прохождение суток)
Остальные методы и атрибуты объектов необходимо предусмотреть и реализовать. В задании могут быть добавлены иные условия и возможности, если исполнителю будет интересно его усложнить (добавить время года, погоду и т.п. влияющие на рост/падение яблок, каждое упавшее яблоко может превращаться в новое дерево через время, следить за удалением яблок из массива, после того как они испортились и т.п.).