-
Notifications
You must be signed in to change notification settings - Fork 2
The MvvmCross Manifesto
MvvmCross is opinionated. It cares about how you write your code. Its opinions are:
-
Portability – you should use Portable Class Libraries for as much of your code as you possibly can - viewmodel, model, service and even view. Friends don’t let friends copy and paste. # is for twitter, not for code.
-
Interface Driven Development – you should use Dependency Injection, Inversion of Control and Plugins to get your applications richly and robustly to market on all of your target platforms.
-
Code for Test – you should use interfaces; you should develop small, cohesive, loosely coupled components; and you should add unit tests to allow your code to be used, reshaped and reused again and again.
-
Mvvm – you should use architectural patterns - especially Model-View-ViewModel with Data-Binding - in order to provide a structure within your app, and in order to deliver both a delightful application and a sustainable, flexible ongoing development process.
-
Native UIs – users love Native, and you should give them Native UIs that delight, that provide rich functionality and that are styled to fit naturally in the context of your users’ devices.
-
Your opinions matter – you should be able to override any part of MvvmCross, including its opinions.
-
The app is King – more than anything else, what matters is that you ship. Delivering is everything. The app is King.