Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Я наоборот устал от того что во View нужно создавать очереди и мучаться с тем что модель уже обновилась, а view еще доигрывает анимацию.
Я сейчас остановился на варианте когда есть контроллер, который знает и про модель и про вью и обновляет их параллельно:
class Controller {
Model _mode;
View _view;
async void DrawCard(int amout = 5) {
for (var i = 0; i < amout; i++) {
var card = _model.Cards[0];
_mdel.Cards.Remove(0);
if (_view != null) {
await _view.DrawCard(card);
}
}
}
}Контроллер устроен так что может работать если view не присвоить.
Интересно) У меня сейчас контроллер обращается к модели, а модель ко вью. Но я пока не вижу проблем в том, что вью отстает от модели. Как раз к такой реализации и хотел прийти. Мне нравится, как это в Slay the Spire реализовано. Там можно много команд отправить с контроллера и смотреть, как они все послушно друг за другом выполняются в нужном порядке
One-on-one. Девлог. Отделение логики от анимаций и переход на ивенты