Sep 6, 2011 at 12:48 PM
Edited Sep 6, 2011 at 12:52 PM
Hi Bharath, Jeremy,
Just want to add couple of points to this from my experience using Jounce for the last year or so. We have been using Jounce for a large LOB application. Some of it already in production and works good. We are still actively building SL application
1. There is a learning curve, it goes for any framework even for home grown ones. So if your developers find it difficult to use, please remember, they will go throgh the same experience for any other frameworks.
2. You normally use Framework for Commanding, Event handling and Region Management. Jounce supports all three, easy to understand and simple implementation.
2. Region Management and Navigations are very simple as event publishing. In my optionon it is the highlight of Jounce.
3. Currently commands are supported only for ButtonBase classes, so if you want to use commands for other UI controls, you have to use event triggers compared to eventtocommand style coding in other frameworks. IMHO 'Event Trigger' is very easy to implement.
We have been using Event Triggers and behaviours and it works like a charm with Jounce.
4. After learing about Design Time Data, I never code without design time data. It is available out of the box in Jounce. If you never used design time data, I would recommend you to look it up and use it.
5. Feature request: Please keep in mind, Jounce uses MEF directly and explicitly. MEF has a limiation on dynamic XAP loading, if the dynamically loaded XAP is optimized using assembly caching, it will not download its depended zip files.
It is not Jounce limiation, it is MEF limitation. In our case, we worked around it by adding all the required dlls in the shell XAP. Need to find a better solution for this.
6. Feature request: Even though Jeremy does not like the pop-up dialog, it is required for most of the development. I already posted the message requesting to add support for child window in the future release. (Please). This is the only
issue we ran into when we were developing our application. We were able to work around the issue, but I really do not like the solution, It is not clean.
7. This is nothing to do with Jounce, rather, how you use your event publisher and subscriber. If you are publishing a message, anyone who are active in app domain will listen to it and try to act on it. Especially if you have multiple XAp files loaded,
everyone will be ready to act on it. So use the messages properly and may be check the visual state before act on it.
7. You need to make sure, all the dynamically loaded XAP need to set Jounce.dll 'copy local' to false, otherwise you will have run time error.