So, I recently came across some information on a development style called Model-View-ViewModel or MVVM.
There is a Microsoft article written by Josh Smith about MVVM here:
And an MSDN blog here:
Basically the idea is that you separate the code for three elements:
There is a book by Josh Smith on Advanced MVVM here:
So I have recently become aware of this model and will learning more about this over time.
I am developing an Application at work and I will try to use the MVVM pattern.