Groups | Blog | Home
all groups > c# > december 2006 >

c# : What is Smart Client Software Factory?


Ronald S. Cook
12/31/2006 11:53:35 AM
What is Smart Client Software Factory and how does it related to/fit in with
Composite UI Application Block (CAB)?

Thanks,
Ron
David Browne
12/31/2006 2:56:37 PM


[quoted text, click to view]

SCSF = CAB + Enterprise Library + Autmated Guidance for building smart
client apps.

Basically SCSF includes all the parts needed to build smart clients, along
with Visual Studio integration create a new smart client app and to guide
you through the implementation tasks.

David
Ronald S. Cook
12/31/2006 3:09:41 PM
Thanks David.

So for a basic Windows app, would you climb the learning curve of CAB and
introduce the associated complexities?

How else would you suggest structuring the UI of a Windows app where you can
still keep "shell" functionality on some sort of a master form, by using
user controls for all module-level functionality?

Thanks,
Ron


"David Browne" <davidbaxterbrowne no potted meat@hotmail.com> wrote in
message news:OjOqr4RLHHA.2232@TK2MSFTNGP02.phx.gbl...
[quoted text, click to view]
David Browne
1/1/2007 9:56:23 AM


[quoted text, click to view]

Add-on frameworks, no matter how good they are, a significant investment.
If you need an MVC-type UI framework, use CAB. If you need a modular,
composable UI, especially one where different teams are delivering modules
that need to interact, use CAB. These are the hard problems that CAB
solves. Basically you need to decide that you have an important requirement
that CAB can help you deliver to justify learning it, implementing it and
forcing it on anyone who comes after you to learn.

[quoted text, click to view]

If you need that kind of modularity, you should invest in learning an
implementing CAB. Otherwise you risk ending up with something both complex
and poorly implemented.

If you roll your own, you will eventually need to be able to:

1) Control loading and initialization of your modules
2) Enable access by modules to shared services
3) Enable access by modules to shell-level UI features (menu bar, status,
tree views, etc)
4) Enable eventing to and from loaded modules
5) Manage the dependencies between modules and between modules and shared
componenets
6) Provide guidance to other developers for delivering modules

All of which CAB addresses.

David
Bob Powell [MVP]
1/1/2007 5:21:34 PM
http://www.codeplex.com/smartclient/Wiki/View.aspx?title=Smart%20Client%20Software%20Factory

--
Bob Powell [MVP]
Visual C#, System.Drawing

Ramuseco Limited .NET consulting
http://www.ramuseco.com

Find great Windows Forms articles in Windows Forms Tips and Tricks
http://www.bobpowell.net/tipstricks.htm

Answer those GDI+ questions with the GDI+ FAQ
http://www.bobpowell.net/faqmain.htm

All new articles provide code in C# and VB.NET.
Subscribe to the RSS feeds provided and never miss a new article.





[quoted text, click to view]
AddThis Social Bookmark Button