Qual a diferença entre Ui Logic e Lógica de Apresentação?
No primeiro capítulo o ápice foi o desacoplamento, no entanto, para projetos que utilizam o Code-Behind (WebForms, WPF, Xamarin) isso parece não fazer nenhum sentido, visto que os propósitos da Code-Behind e da ViewModel são os mesmos. Isso fica mais explícito quando analisado o trabalho extra que é necessário para implementar por exemplo o OnPropertyChanded nas ViewModels enquanto que no Code-Behind já é algo nativo.
insira seu código aqui