D. Controllers

  1. To fulfill its function as a container, a WorkItem needs a place to hold its business logic. In the early days of CAB, this was often done by deriving a new class from WorkItem, such as BankTellerWorkItem, and placing the business logic on that class. Experience with the first CAB applications showed that this pattern allowed the WorkItem class to get too complex. Everything that a logical subapplication had to do or to hold was concentrated in just one class. It became the "God object," too large and complex to test or inspect, or even develop properly.

    By the time SCSF came out, the design philosophy had shifted to recommend separating the holding functionality from the doing functionality. Since the WorkItem already contained ...

Get Programming Microsoft® Composite UI Application Block and Smart Client Software Factory now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.