Module Interface Separation

Topics: CAB & Smart Client Software Factory
Aug 16, 2006 at 8:24 AM
originally posted by: choenes

I'm now playing with the SCSF and am not sure I really understand the Module Interface Seperation pattern that is used with every module I've seen in the reference apps.

The reason to use the seperate assembly is to allow dependent assemblies to not have to be rebuilt when the implementation of a module changes (only when you change the interface module).

This seems like a lot of overhead to have seperate modules / assemblies when all you really need to do is not change the version number of the module assembly unless you change the interfaces. Granted that seems like the versioning by hand may be more error prone than using seperate modules like this pattern.

What is everyone else's feeling?
Aug 18, 2006 at 12:56 PM
originally posted by: PauloMorgado

This pattern gives you the ability to change an application's behavior by providing different impelmentations of a service or module. And it helps with unit testing, also.