From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,e429176c9adb07b X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-02-17 06:15:06 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!newsfeed.berkeley.edu!ucberkeley!newstransit.mitre.org!newsfeed.mathworks.com!arclight.uoregon.edu!newsfeed.cs.utexas.edu!geraldo.cc.utexas.edu!not-for-mail From: "Bobby D. Bryant" Newsgroups: comp.lang.ada Subject: Re: Re; [OT] Best way to isolate a GUI? Date: Mon, 17 Feb 2003 08:09:35 -0600 Organization: dis- Message-ID: References: NNTP-Posting-Host: dial-103-37.ots.utexas.edu Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: geraldo.cc.utexas.edu 1045490976 17616 128.83.176.85 (17 Feb 2003 14:09:36 GMT) X-Complaints-To: abuse@utexas.edu NNTP-Posting-Date: Mon, 17 Feb 2003 14:09:36 +0000 (UTC) User-Agent: Pan/0.13.3 (That cat's something I can't explain) Xref: archiver1.google.com comp.lang.ada:34168 Date: 2003-02-17T08:09:35-06:00 List-Id: On Mon, 17 Feb 2003 08:25:06 +0100, Jano wrote: > Anyways, I not need to be secretive about my project, since is a > personal one. I'm trying to implement a basic Gnutella servant, just to > improve my skills in Ada. You see now what's the core and what's the > GUI... It's still not clear (to me) from your posts what exactly you're asking. Are you saying you want to write a client for Gnutella? And when you say you want to "isolate the GUI", are you saying that you want a run-time isolation, or that you want the code separated out so that you can replace it with a different GUI without having to modify your "core" application code? In the latter case the answer is obvious: put your "core" code in one or more Ada packages and put your GUI code in others. This will take some planning ahead, since GUI-based applications tend to be driven by the GUI and only access the "core" code as callbacks; you will need to think carefully about what sort of callbacks will be common across various GUIs, and define your "core" package(s) on the basis of those requirements. If you want a run-time separation, you still need to give a clearer explanation of what kind of separation you want. If you just want to write a client for Gnutella you will have to write your client to use whatever communication protocol Gnutella is based on, which is only an Ada question when it comes down to "how do I implement that?". -- Bobby Bryant Austin, Texas