Все мы знаем, что сторонники MVVM любят ICommand, но для чего он был изначально разработан?
ICommand находится в PresentationCore, что, как я считаю, указывает на то, что он изначально был разработан для WPF и MVVM.Это сборка для основных компонентов WPF.
Команда является универсальным шаблоном проектирования, он служит для инкапсуляции запроса , что позволяет, например, передать его, что удобно для привязки данных.Но сама инкапсуляция довольно полезна для более слабой связи.