Perhaps the most thing that i don't like in PRISM is its view discovery approach.
I don't think that module should be responsible to inject views in regions.
Currently I'm using string key to register views and than use them in application controller.
But I don't like strings! =) Currently I'm thinking of sharing all view interfaces in infrastructure project and then use them for dependency injection. So in module initialize method i will just register views to that interfaces. What u think of such approach?