Interface Design And Scalability

Tech-Archive recommends: Speed Up your PC by fixing your registry

From: Henry (hjackman4_at_comcast.net)
Date: 04/13/04


Date: Tue, 13 Apr 2004 07:38:57 -0400

Hello,

I am "attempting" to develop an ATL COM DLL that exposes a large number of
functions. Somewhere in the order of 100. They are completely independent
of eachother; however, they can be grouped into several different objects.
The problem is that some of the groups share the same properties while
others do not. For instance, I may have objects IA, IB, and IC. IA and IB
share common properties while IC has a different set of properties. I keep
reading that I should keep the number of methods in an object to a minimum.
I also keep reading that I should group methods with related properties.
Hmmmmm.

Should I combine objects IA and IB?
    If yes...What if I add more functions in the future and now the object
exposes 150 methods?
Should I create another object IProperties and expose this object in IA and
IB via a method/property?
Should I create separate DLLs?
    If no...What if I the size of the DLL grows large and I want to use the
DLL in a COM+ application on the server or in a web site?
Should I use aggregation/containment/static object hierarchies?

I would greatly appreciate any suggestions.

Henry



Relevant Pages

  • Re: Memory Cleanup in .NET
    ... I have a COM dll which exposes an object CClient and has the interface ... This COM client is wrapped in a dlland the ... I have modified the code in this wrapper dll to do a SysFreeString(of ...
    (microsoft.public.dotnet.framework.clr)
  • Re: Uses for Screen OCR technology
    ... the DLL itself has a class factory that creates the COM ... ..NET exposes COM in a nice way, much like VB exposes COM in a nice way. ... It's the nicest bridge possible from the app developer to COM. ...
    (microsoft.public.vc.mfc)
  • Problem retrieving object
    ... Each dll is specifically desgined so it exposes ... a third party control as a Control object. ...
    (microsoft.public.vb.winapi)
  • Re: create a wrapped managed dll that can be used from pure unmanaged code
    ... > I am trying to create a dll that internally uses managed types but exposes ... > a plain unmanaged interface. ... So that I would be able to use that dll from pure unmanaged ...
    (microsoft.public.dotnet.languages.vc)
  • Call VC++ functions from CSharp
    ... functions exposed by prev .dll. ... of structure and pointer to structures and enumeration. ... Is there any other possible way.to access exposes ...
    (microsoft.public.dotnet.framework.interop)