Я уже видел документ, описывающий «треугольную» форму MVC, и я полагаю, что кто-то в какой-то момент заставил ее работать (либо так, либо в документах об этом просто говорится о бесполезном программном обеспечении). Однако я не нашел в этом большого практического применения, так как это приводит к серьезной проблеме «инженерии» программного обеспечения: циклической зависимости. Если ваше представление зависит от точной формы модели, чтобы выполнять некоторые запросы, а модель зависит от точной формы контроллера, а контроллер зависит от точной формы представления, тогда становится практически невозможно поменять местами из любого из этих элементов.
Я обнаружил, что очень полезно иметь модель, которая не зависит ни от чего, кроме простой программы командной строки. Представление, которое не зависит ни от чего, кроме любого инструментария графического интерфейса или API для рисования графики, который вы используете, и контроллера, который действует как посредник между ними, обеспечивая эту развязку. Это стратегия, которая позволяет вам создавать модели и представления, которые являются модульными и взаимозаменяемыми, оставляя только один компонент: контроллер со всеми этими неприятными зависимостями.
Конечно, может быть какая-то «официальная» версия шаблона MVC, но я не смог пробраться через какой-либо документ, претендующий на описание такой вещи в такт, с каким-либо большим смыслом, который действительно применим к системы реального мира. Но, может быть, я просто тупой в этом плане.
person
Breton
schedule
28.07.2009