Re: Interchangeable object strategy needed.

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance

From: Alexander Nickolov (agnickolov_at_mvps.org)
Date: 06/15/04

  • Next message: ADX Dev: "RE: regsvr32 return code 0x80040154 on XP"
    Date: Mon, 14 Jun 2004 20:26:12 -0700
    
    

    I believe your problem is you do not abstract the packages
    properly. Express their functionality in terms your application
    uses, not in terms of their exposed interfaces. IIRC, the design
    pattern you are implementing is called Adapter.

    -- 
    =====================================
    Alexander Nickolov
    Microsoft MVP [VC], MCSD
    email: agnickolov@mvps.org
    MVP VC FAQ: http://www.mvps.org/vcfaq
    =====================================
    "BobforeApples" <BobforeApples@discussions.microsoft.com> wrote in message
    news:71DF1F4B-3515-4943-B4DB-DCFF5CC822D6@microsoft.com...
    > Hello,
    >
    > I need some input on a better way to handle interchangeable objects.
    >
    > Background: We have an application that acts as a front-end to several
    Chromatography packages from several manufacturers. Each application has
    some method of accessing data/automating commands, but the methods differ
    from one package to the next.  These methods are DDE/Flat files, DDE, and
    Com/ActiveX.  I currently have three COM objects written in VB that are
    based on an interface also defined in VB (empty shell object).  In addition,
    I have a fourth class that acts as a connection object/object server/event
    sink for the "ActiveGC" objects.
    >
    > The above works OK but is a pain to maintain.  Any change, not matter how
    trivial seems to require a complete chain of recompiles and the resulting
    redistibution of all objects.  I've tried enforcing compatibility using
    reference files, but some object always seems to lose track of the other
    objects and then "here we go again!"
    >
    > The Problem:  A better understanding of how sequences are handled in GC
    software (or at least a better understanding of how to reconcile the
    vendor's differences) forces me to make interface level changes to the
    object model.  I'd like to take the opportunity to fix the whole scheme so
    that it's easier to support.
    >
    > I'd like to switch to .NET, but our company has mandated that .NET
    development will be done in C#.  My inexperience with C# and an apparent
    lack of support for DDE in .NET forces me to stick with what I know for now
    (I can't move off DDE until the vendor does).
    >
    > The Question:  Can anyone point me to an object model or design pattern
    that does what I'm trying to do, but that is easier to update, and at the
    same time is more flexible with events?
    >
    > Thanks in advance for any suggestions,
    >
    > Bob
    

  • Next message: ADX Dev: "RE: regsvr32 return code 0x80040154 on XP"

    Relevant Pages

    • Re: Interchangeable object strategy needed.
      ... "Alexander Nickolov" wrote: ... > based on an interface also defined in VB. ... > that it's easier to support. ... > lack of support for DDE in .NET forces me to stick with what I know for now ...
      (microsoft.public.win32.programmer.ole)
    • Re: Interchangeable object strategy needed.
      ... three separate packages we support. ... I think the original design succeeded in it's intent. ... interface, we still run into occasions where recompiling one ActiveX EXE has ...
      (microsoft.public.win32.programmer.ole)
    • Re: Benefits (and risks) of using Sid
      ... because I'm working out ideas for redesigning the interface ... Here is a list of my favorite aptitude-interactive-UI features (I run ... Fine-grained control of installation of recommended and suggested ... packages: Before any scheduled action is carried out, ...
      (Debian-User)
    • Re: A choice?
      ... Packages" option later in the install process too. ... RH9 had a wonderful interface for selecting specifically which packages you ... >I would argue that both your examples (Lilo and an fdisk button) fall ...
      (Fedora)
    • Re: Question about calling constructors of inner classes across different packages
      ... that implements the interface, and a second class that extends the first class (and the inner class as well, since I've made it protected.) The interface, base class, and derived class are all in separate packages. ...
      (comp.lang.java.programmer)