На этом слайде мы сформулируем задачи контроллера и выделим его в отдельный класс.
Дата отправки отчёта:
23 июля 2018 г.
Задание выполнено: за
3 час. 1 мин.
Чему научился:
Какие действия относятся к управлению и выносятся в отдельный класс Controller, чтобы отделить его от логики и представления согласно шаблону проектирования MVC (Model-View-Controller) В нашем шаблоне контроллер управляет моделью, а модель управляет представлением, а в другом варианте реализации: контроллер управляет и моделью, и представлением
Что было сложным:
Сделать постоянное движение символа, не выезжая за границы консоли, и при достижении границы реагировать на выбор другого направления. Хотелось сделать меньшим количеством кода, но тогда из позиции (0,0) символ уже никуда не хотел двигаться (
Поздравляю Татьяна что вам удалось реализовать работу приложения в режиме ограничения пространства объекта. Ну а длина кода обычно сказывается на решениях Ивана Воронина. Это он любит весь код в одну строчку загнать. Но это не совсем правильный подход как вы понимаете. Код должен быть красивым и соответствовать некоторым конвенциям. Ну акк тут без них... Удачи на проекте
Код должен быть не красивым, а коротким и быстрым. Конечно сейчас никто не помнит времена, когда ОЗУ было всего 32 кб, взять тот же Гугл Хром, жрёт гигабайты и имеет кучу утечек памяти, но всем пофиг, у всех гигабайты ОЗУ и уже i9 процессоры. з.ы. По поводу кода в одну строчку не понял претензий, что именно тебе в этом не нравится?
Научился: Подробнее узнал о модели MVC.
Первый вариант MVC - все связи односторонние. Пользователь использует контроллер (Controller) для управления моделью (Model), а та, в свою очередь, обновляет представление (View), которое и видит пользователь.
Второй вариант MVC - Модель (Model) не может напрямую взаимодействовать с представлением (View), а только через контроллер (Controller). То есть данные, полученные моделью, должны каким-то образом обработаться посредством модели, а затем уже выводятся пользователю, например, в виде диаграммы. Трудности: Сложностей не возникло. Очень неплохо получилось - наглядная работа модели Model-View-Controller (MVC).
Научился: Для реализации перемещения придётся ввести переменную, которая будет получать значение с клавиатуры и повторятся в цикле. А для стабилизации скорости задержку по времени для цикла.