Угловая определенно больше Model-View-ViewModel-ish. В то время как то, что вы делаете, определенно звучит как MVC.
MVVM - это особый шаблон, в котором состояние пользовательского интерфейса инкапсулировано в ViewModel, так что рендеринг конечного пользовательского интерфейса довольно тупой и просто привязка данных. Логика состояния, чтобы сказать, показать эту кнопку или скрыть эту область, все инкапсулируется в ViewModel. Одно из преимуществ заключается в том, что это позволяет создавать единичные тесты для тестирования ViewModel и тем самым неявно тестировать все поведение пользовательского интерфейса. (См: Wikipedia article on MVVM и Martin Fowler's Introduction to Presentation Model которого MVVM является вариацией.)
В MVC, сам вид имеет широту, чтобы контролировать его поведение, что вы хотите, чтобы показать/скрыть, и т.д. Основу данных при условии, модель , Это означает, что в MVC вы не можете тестировать поведение пользовательского интерфейса (например, если что-то правильно отображается или скрывается на основе изменений данных) без тестирования самого пользовательского интерфейса.
Итак, MVVM, ViewModel контролирует поведение пользовательского интерфейса, а сам пользовательский интерфейс является немым и просто использует привязку данных и делает то, что, как ему говорят, делает на основе логики в ViewModel.
В MVC пользовательский интерфейс является «интеллектуальным» и преобразует и отображает его, но он чувствует, что он должен основываться на данных, которые он получает от модели.
В основном вы можете посмотреть, как визуализируется пользовательский интерфейс, и если вы видите логику визуализации пользовательского интерфейса, принимающую множество собственных решений о том, как сделать себя на основе решения, то вы в значительной степени знаете, что используете MVC. Если вы просто видите много привязки данных, где почти каждое поведение управляется отдельным классом, который инкапсулирует всю логику для отображения и скрытия фрагментов пользовательского интерфейса, и эти данные передаются в пользовательский интерфейс через привязку данных, тогда это вероятно, MVVM.
Я надеюсь, что это поможет.
Просто пойдите в Google. http://stackoverflow.com/questions/667781/what-is-the-difference-between-mvc-and-mvvm Или это http://stackoverflow.com/questions/19444431/what-is-difference-between-mvc -mvp-mvvm-design-pattern-in-terms-of-coding-cs и многие другие .... –
У меня есть несколько раз. Несколько раз задавался вопрос. Люди дают разные ответы. Я знаю, что он заменяет контроллер модельным обзором, но у меня есть контроллер в обоих случаях, и я нахожу разницу в том, как все делается. Технически, оба будут MVC, но какая разница в этих архитектурах? Какое имя для этих различий – Oct8
Вы знаете, какой ASP.NET MVC есть, не так ли? Это не должно путать. Я не знаю, какой шаблон использует углы, но если он связывает данные между вызовами сервера и пользовательским интерфейсом, это, скорее всего, MVVM. – Will