Which design pattern to use for MS Surface (WPF) apps?
Reference Information. I am currently building a few simple applications for my university to demonstrate the educational potential of the Microsoft Surface . Their functionality falls somewhere between a basic demo application and a full-fledged production application.
Our hesitation with using MVVM or some other type of MVC is that, with the exception of a few data-enabled apps we have, most of our apps are deeply tied to their presentation (i.e. the Surface touchscreen). It does not seem logical to emphasize such an extreme separation of business logic and view in this circumstance.
Any ideas?
source to share
I've used MVVM with great success on Surface. MVVM is all about modeling your views and separating any logic behind them. It doesn't matter if this logic applies to databases or something else. If you have an idea, this is a look at something. So something has to be represented by your view model.
source to share
The point of using some kind of MVC like MVVM is to remove this deep connection between presentation and behavior. Such a relationship is fairly universally considered BAD and should not be a desirable trait. I highly recommend you work to decouple your views from the logic that drives them and use the WPF MVVM approach. Ultimately, you will be much happier and your application will be more user-friendly and reliable. It doesn't matter if the presentation platform is Surface, Vista, Windows 7, or any other device that supports WPF ... separation of concerns is the KEY you should really strive to face.
source to share