I started off on Prism few months back but still the framework itself is so much complex that its taking time for me to get over it. I have few design and architecture related basic questions that i want to consider in order to have loose coupled application which is the prime idea of this framework.
- In MVVM, can Model contain the behaviors and is it a good way to implement INotifyPropertyChanged interface in it?
- Is it necessary to have one shell with fixed regions across the whole application?
- Can we have multiple shells, module wise in the same application?
- When we navigate to View how can we specify some specific ViewModel to associate with it.
- Is there any approach to navigate to ViewModel and ViewModel should know about their associated view, preferably using Uri (for loose coupling)?
- There is also a Caliburn-Micro framework which is similar to Prism. I want to ask that why one should consider using Prism over it?