<p>Please review all the code and determine for each class if it was designed for inheritence. If so, check the (protected) constructors (perhaps create a protected default ctor) and what methods should be virtual and protected. If a class was not designed for inheritence mark it as 'sealed'.</p>
Comments: ** Comment from web user: aadami **
Comments: ** Comment from web user: aadami **
I believe it would be helpful to refactor the ModuleManager class to provide more virtual methods in order to make this class more extensible. For example like in the scenario mentioned in this thread (http://compositewpf.codeplex.com/discussions/402059) it would have been useful if the InitializeModule method was defined as a protected virtual method.
Also, as mentioned in this related work item (http://compositewpf.codeplex.com/workitem/8101) the DelegateCommandBase class doesn't have their Execute and CanExecute methods defined as virtual, which would be necessary to extend the functionalities of this class.
Regards,
Agustin Adami
http://blogs.southworks.net/aadami