Model View Controller, em um jogo !?
A história
Não estou mais surpreso com a constante mudança de requisitos nos jogos. Especialmente para elementos de interface do usuário.
Na maioria das vezes, não são os dados que devem ser alterados (não é como se eles de repente quisessem que a pontuação mais alta fosse um rótulo parabenizando você pelo seu progresso), mas a apresentação deles.
O caso estranho em que o comportamento está sujeito a ajustes também ocorre.
A vantagem é que eles querem fazer uma demonstração A / B das duas variantes, ou talvez um teste A / B / C / D.
É bem claro onde estou indo com isso, certo?
A solução
Faça com que o modelo contenha os dados do que deve ser visualizado. Em seguida, implemente um pequeno controlador onde você controla a renderização de quaisquer dados que devem ser renderizados. Em seguida, faça com que este controlador configure e inicie várias visualizações para os dados dependendo de alguma entrada que permite a você (o programador estrela do rock) alterar a interface do usuário em tempo de execução sem complicações.
Na próxima vez que seu chefe mudar de ideia, você pode até ter a implementação pronta.
Em contraste com o modelo MVC da web, descobri que o controlador deve ter um papel maior. Deve ser permitido controlar constantemente o estado da visualização, ou seja, para ajudar com animações e transições.
Boa sorte em seu mini MVC para sua IU!