Цитата:
|
Спасибо за развернутый ответ, но мне кажется, что все это экономия на спичках.
|
Дело в том, что код не обязательно должен следовать ТЗ. Особенно на собеседовании.
Сам принимал много тестовых заданий, причём со схожей тематикой.
И просто по коду видно, как человек относится к некоторым вещам. Кто-то явно прописывает MVC-роли в именах классов, кто-то начинает подключать всякие фрэймворки, кто-то оптимизирует отрисовку блиттингоми и использует всякие инвалидации. Не всегда получившийся оверхед таких решений хорош для решения конкретной задачи, но иногда очень неплох для определения кругозора тестируемого.
Одно из лучших решений просмотренных тестовых заданий на моём веку - это было решение от товарища
ChuwY - он расписал по каждой задаче несколько вариантов решений, написал бенчмарктесты и описал в комментах лучшие и плохие стороны решения.
Добавлено через 37 минут
Цитата:
|
Как можно сделать его явнее в контексте такого маленького примера,
|
Просто выделить явно сущности - Main - пусть будет контроллер.
MainModel - содержит количество планет и лун
PlanetModel, содержит соответственно модель планеты и лун.
UniverseRenderer или MainView - рендерер вселенной
GUIView - гуи.
Когда имена сущностей более явные - сразу понятно, что некоторые вещи им нельзя позволять делать.