I don’t remember tweeting that I “was working on a Silverlight equivalent to Cabana”. I can imagine myself saying that I intend to do such a thing. I’m not ready to start though.
When I wrote Cabana I had years of experience writing WinForms applications. I knew how folks tended to structure their UIs (the Outlook look) , how they did forms-over-data, how they presented modules in separate tabs of a shell’s tab control.
I was also enamored of infrastructure that relied on inheritance.
Today, I don’t know what the popular visual metaphors and interaction paradigms will be for Silverlight business applications. I think it is a misuse of Silverlight’s potential to merely reproduce what was common for WinForms. I say that having done essentially that in Prism Explorer.
Today I realize that the deeply nested infrastructure that was Cabana (and CAB) is not such a great idea. I’m looking to thinner, more composed structures these days. If you look at Prism and Prism Explorer you will see only shallow inheritance in the classes.
All in all, I’m a good six months from feeling ready to pronounce on what a Cabana equivalent should be. Then I can try to develop it. Better yet, I’m hoping to borrow from others.
If you’ve been following my blog and my tweets you’ll notice that I am much involved with the community of experts who are working through these patterns and paradigms.
Wish I had a better answer. I still feel that Silverlight productivity trumps WinForms productivity once you get the hang of it. It’s worth the journey.
---- G replies 7/30/2009 ----
To be honest I can't remember exactly what that tweet said so I paraphrased with wishful thinking in mind!
I too am enamoured with the relative simplicity (compared with CAB) of Prism and the overall productivity gains with Silverlight. I am thinking about delivering some small, simple apps first and keeping a close eye on the community for where thinking is going. I do not want to begin a large project only to flounder with concern over the best patterns.
I have built a fairly large application using Cabana as my base and DevForce Classic as it is now known. I can (and do) add new functionality with relative ease and I so greatly respect your work. The deep inheritance does however appear complex compared with how one might construct something similar with Prism.
I read your blog regularly and I am deeply impressed with DevForce Silverlight. I am on vacation now but if I'm honest I can't wait to get back to work on this stuff!
Thanks again Ward, keep up the great work.
--- Ward replies 7/30/2009---
Thanks for all of that encouragement, G It’s the kind of thing that keeps us motivated. Stay in touch – Regards, Ward