Great learning experience so far...

This whole endeavour with the Version 3 of Veronica's application has been amazing. Learning more than I had ever hoped about Silverlight, and really by accident I'm also learning a number of new best practices I will apply going forward.

While I was at the dealership getting my car serviced, I sat in their waiting area coding the methods to control the level of loading used on my objects and writing some tests in WPF. Hit another snag where the WCF service won't let me have 2 methods with the same name, also discovered how terrible the performance is using Synchronous calls. The performance is really just as bad with Asynchronous calls (if not worse), but the perception is better because the UI doesn't freeze while something is going on. It isn't as bad in the pure .Net 2 application communicating directly with nHibernate and the database, but even there it is synchronous and there are times when I find myself dismayed at how slow it can be.

So, ultimately, if I hadn't hit any problems along the way I would still be more or less oblivious about coding with Silverlight, my application would be slow and terrible and would have learned next to nothing.

At the moment, I will probably change the UI yet again from being a WPF application back to a Silverlight one. The performance issues are killing me and while I can do async in WPF through the WCF service... that really seems like a waste of time. Though, before I go and nuke the WPF code out of my project I should probably test Silverlight first. I've hit enough unexpected events along the way now to know not to assume that just because it works in my Synchronous WPF application that it won't necessarily work in Asynchronous Silverlight application.

Comments

Popular Posts