Kimberly Tripp announced
that she has started to collect what she believes are the best white papers
available for Sql Server. There are white papers for MSSQL 2000 & 2005.
Some time back it was decided that we will port one of our projects to the CAB UI framework. The project is conceptually similar to the CAB in many ways. We use MVP in the UI. Except from modal dialogs we don't use forms at all. What would traditionally be a WinForm is a UserControl that is hosted in a form that the UserControl is not aware of. Despite the fact that we don't use any DI (Dependency Injection) framework, all inter-component communication is done through Interfaces and IoC (Inversion of control) is achieved by consistently using constructor injection.
Why did I ramble about all this you may ask. Well, we're past the conversion of the project and IMHO it is a great success. The end users of the system will probably not even know that something happened, but we're in a much better place for continued development in a rapidly changing environment. There were some painful moments, but not too bad. So back to the semi technical first paragraph. The reason I wrote that was that the amount of effort you will have to put in learning the CAB will be affected by how much experience you have with some of the patterns that are heavily used throughout the CAB. In any case, getting started with the CAB is not something you do in an afternoon.
If you wonder if you will benefit at all from using the CAB, you can read a brief overview and make your own decision regarding how much you will gain by using the CAB. In the remainder of this post and a few future posts I will try to lay out the process we went through what went smooth and were we (I) stumbled. That will hopefully be of some help as to estimate how much it will cost you in learning and development time.
Despite the fact that the underlying UI framework is the Composite UI Application Block, Microsoft has released a relatively new project aimed at remove some of the complexity in implementing CAB based applications. The product is SCSF (Smart Client Software Factory) and is currently available for C# only. VB.NET support is expected by the end of April.
The first task was to gather information on the CAB, SCSF. I would strongly advise anyone not familiar with MVP, MVC, DI and IoC to do some reading on that first. These patterns are the building blocks for any development using SCSF and CAB.
I'll round off this post with a list of resources to get you started.
If you prefer, you can get past the overview stage in front of media player or while commuting instead of reading. If your MP3 player supports wma files, you should be able to just rename the wmv video files to wma in order to listen to them on the road.
I found the webcasts a little too slow (even in high speed), but they will give you a good overview.
If you run into any issues or problems, you can post questions on CodePlex (The home of SCSF and CAB)