Отделение вида от модели в веб-приложениях
Я часто вижу веб-приложения, в которых программа представляет собой несколько объектов javascript, обертывающих объекты DOM. Эти объекты JS выполняют все функции модели, контроллера и представления.
Мне кажется, что это нормально для веб-приложений более старого стиля, в которых на самом деле не было большой функциональности модели или контроллера, но в более новых, более интерактивных приложениях, где целые программы написаны поверх, скажем, Canvas или SVG... кажется, что должно быть больше разделения этих компонентов.
Я прав в этом или есть причина, почему люди объединяют все вместе в большие объекты JS?
1 ответ
Sproutcore - это прикладная среда html 5 javascript, которая очень сильно mvc. Есть кривая обучения, но как только вы ее получите, вы получите очень хорошее разделение проблем между моделями, представлениями, контроллерами. В сочетании с магией связывания SC, вы пишете очень мало кода клея; т.е. когда вы загружаете свои модели из магазина, представления обновляются автоматически. Единственная работа, которую вы выполняете, - это создание привязок из представлений -> контроллеров -> моделей. Это действительно очень элегантно.
Я согласен с вами, поскольку веб-приложения становятся все более и более сложными, MVC - это только хорошая вещь.