From: David Botton <david@botton.com>
Subject: Re: Coupling or not coupling database and GUI libraries (was: GWindows and a future home for it)
Date: Thu, 21 Oct 2004 22:36:59 -0400
Date: 2004-10-21T22:36:59-04:00 [thread overview]
Message-ID: <2004102122365975249%david@bottoncom> (raw)
In-Reply-To: 87mzyglzkm.fsf_-_@insalien.org
I'd like to point out that the Database code in GWindows is in fact
_not_ tightly coupled, although it offers a system to graft database
functionality on to controls if one would wish to do so.
Personally, I like doing things myself :-) Which is one reason I allow
for it to be decoupled easily.
David Botton
On 2004-10-21 14:02:17 -0400, Ludovic Brenta
<ludovic.brenta@insalien.org> said:
> As a backgrounder on my experience: a few years ago, I wrote a 120
> kSLOC application in Java that did just that - an interface to a
> database. The front-end started as Swing but changed to HTML and a
> bit of Javascript. There was an abstraction layer over the database
> that supported Oracle, DB2 and DB2/400 and provided the database
> schema metadata to the visualisation layer. There were a connection
> pool, several caches of metadata and data, and application-level
> permission settings (authentication was delegated to the database
> server, authorisation done in the application).
>
> I have several concerns with tight integration of GUI and database
> libraries.
>
> 1. If every widget can be attached to a database query, will every
> update to a widget not cause an SQL query? This should be avoided.
>
> 2. If every widget is attached to a query, is it possible to update
> several widgets with one query, i.e. that several widgets be
> attached to the same query?
>
> 3. Is it possible to perform arbitrarily complex, application-specific
> formatting to the data as it goes back and forth between the
> widgets and the database?
>
> In the application I mentioned, we would routinely do queries that
> joined 5 or 6 tables, and we had lots of heuristics to help speed that
> up. In one of the screens, we would present a tree structure
> constructed from oh, perhaps 10 different queries.
>
> I have not really had a deep look at either Delphi, MFC, or GWindows,
> but I suspect that coupling the GUI and the database libraries is only
> useful for quick-and-dirty work when you want to create forms where
> one form=one record in the database.
>
> But for anything more complex, such coupling just gets in the way. In
> fact, it is the job of any non-trivial database GUI to perform the
> "grunt work" you mentioned, and I cannot think of a useful way the
> library could ease that. Or perhaps you were only thinking of
> marshalling and unmarshalling of individual database fields to and
> from the database? Yes, this is grunt work, but it is often
> application-dependent too. And unlike Java, Ada has generics which
> can be instrumental in making this grunt work a piece of cake.
>
> Java's JDBC is not tightly coupled with Swing or AWT. Both APQ and
> GNADE are similar in concept to it, or the ODBC API which is also not
> coupled with any GUI.
>
> I do not think it is wise to have a GUI-dependent database library.
next prev parent reply other threads:[~2004-10-22 2:36 UTC|newest]
Thread overview: 107+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-09-29 2:48 GWindows and a future home for it Fionn mac Cuimhaill
2004-09-29 2:53 ` stephane richard
2004-09-29 7:20 ` Martin Krischik
2004-09-29 12:40 ` Chris Humphries
2004-09-29 15:21 ` stephane richard
2004-09-29 19:12 ` Chris Humphries
2004-09-30 0:03 ` Stephen Leake
2004-09-30 1:39 ` stephane richard
2004-09-30 3:29 ` Fionn mac Cuimhaill
[not found] ` <mailman.141.1096581654.390.comp.lang.ada@ada-france.org>
2004-09-30 23:32 ` Randy Brukardt
2004-10-01 1:28 ` Stephen Leake
2004-10-01 1:39 ` stephane richard
2004-10-01 6:43 ` Fionn mac Cuimhaill
[not found] ` <umzz75se6.fsf@acm.org>
2004-10-01 10:48 ` Marius Amado Alves
2004-10-01 14:49 ` Fionn mac Cuimhaill
2004-10-01 15:39 ` Marius Amado Alves
2004-10-01 15:50 ` stephane richard
2004-10-01 16:25 ` Chris Humphries
2004-10-01 17:09 ` Ludovic Brenta
2004-10-21 17:12 ` Warren W. Gay VE3WWG
2004-10-21 18:02 ` Coupling or not coupling database and GUI libraries (was: GWindows and a future home for it) Ludovic Brenta
2004-10-21 21:11 ` Coupling or not coupling database and GUI libraries Warren W. Gay VE3WWG
2004-10-22 2:36 ` David Botton [this message]
2004-10-02 2:01 ` GWindows and a future home for it Fionn mac Cuimhaill
2004-09-30 14:40 ` Nick Roberts
2004-09-30 15:22 ` stephane richard
2004-10-01 19:52 ` Nick Roberts
2004-09-30 16:55 ` tmoran
2004-09-30 22:17 ` Stephen McNeill
2004-09-30 22:48 ` stephane richard
2004-10-01 16:34 ` Björn Persson
2004-10-01 16:58 ` AndreS
2004-10-01 18:08 ` Georg Bauhaus
2004-10-01 18:16 ` Randy Brukardt
2004-10-01 23:20 ` tmoran
2004-10-02 0:45 ` Jeffrey Carter
2004-10-03 17:23 ` David Botton
2004-10-04 22:10 ` Randy Brukardt
2004-10-01 18:40 ` Marius Amado Alves
2004-10-03 22:45 ` Georg Bauhaus
2004-10-04 13:01 ` Marius Amado Alves
2004-10-04 21:05 ` Ludovic Brenta
2004-10-06 10:13 ` Marius Amado Alves
2004-10-06 13:15 ` David Botton
2004-10-06 14:35 ` Marius Amado Alves
2004-10-06 15:07 ` Hyman Rosen
2004-10-06 17:04 ` Marius Amado Alves
2004-10-06 17:53 ` Licenses and physical things Björn Persson
2004-10-06 18:02 ` GWindows and a future home for it Hyman Rosen
2004-10-06 18:39 ` Marius Amado Alves
2004-10-06 18:58 ` Georg Bauhaus
2004-10-06 19:20 ` Marius Amado Alves
2004-10-06 20:30 ` Hyman Rosen
2004-10-06 21:28 ` Marius Amado Alves
2004-10-06 21:40 ` Hyman Rosen
2004-10-07 11:50 ` Marin David Condic
2004-10-07 14:33 ` Georg Bauhaus
2004-10-06 13:19 ` Gnat Pro and the GPL Björn Persson
2004-10-06 17:16 ` Marius Amado Alves
2004-10-06 17:55 ` Björn Persson
2004-10-06 18:18 ` Marius Amado Alves
2004-10-06 19:02 ` Hyman Rosen
2004-10-06 20:25 ` Björn Persson
2004-10-07 6:07 ` Florian Weimer
2004-10-07 16:00 ` Björn Persson
2004-10-06 22:21 ` CBFalconer
2004-10-06 18:04 ` Hyman Rosen
[not found] ` <4163C54F.9050700@netcabo.pt>
2004-10-07 0:27 ` GWindows and a future home for it Stephen Leake
2004-10-07 0:55 ` stephane richard
2004-10-07 19:11 ` Not redistributing GNAT Pro (was: GWindows and a home for it) Ludovic Brenta
2004-10-08 2:07 ` Jeff C r e e.m
2004-10-08 16:50 ` Not redistributing GNAT Pro Ludovic Brenta
2004-10-08 17:26 ` Jeff C r e e.m
2004-10-09 2:27 ` Brian May
2004-10-09 11:14 ` Ludovic Brenta
2004-10-09 5:16 ` CBFalconer
2004-10-09 9:57 ` Jerry van Dijk
2004-10-08 5:53 ` Not redistributing GNAT Pro (was: GWindows and a home for it) Simon Wright
2004-10-01 23:57 ` GWindows and a future home for it Stephen Leake
2004-10-02 3:06 ` Fionn mac Cuimhaill
2004-10-02 7:13 ` tmoran
2004-10-03 16:22 ` James E. Hopper
2004-10-03 19:03 ` Future of Ada volunteer efforts David Botton
2004-10-03 23:31 ` stephane richard
2004-09-30 0:13 ` GWindows Database time type Stephen Leake
2004-09-30 4:31 ` Fionn mac Cuimhaill
2004-10-01 0:57 ` Stephen Leake
2004-10-01 1:44 ` stephane richard
2004-10-01 3:04 ` Randy Brukardt
2004-10-01 10:07 ` stephane richard
2004-09-30 18:44 ` Georg Bauhaus
2004-10-21 17:29 ` Warren W. Gay VE3WWG
2004-10-22 2:32 ` David Botton
2004-10-22 16:46 ` Warren W. Gay VE3WWG
2004-10-21 17:26 ` Warren W. Gay VE3WWG
2004-10-03 15:41 ` AdaPower and GWindows community effort drive David Botton
2004-10-03 16:45 ` stephane richard
2004-10-03 17:29 ` David Botton
2004-10-03 17:38 ` stephane richard
2004-10-03 19:10 ` David Botton
2004-10-04 2:12 ` Stephen Leake
2004-10-04 2:21 ` stephane richard
2004-10-04 13:25 ` David Botton
2004-10-04 2:37 ` Fionn mac Cuimhaill
2004-10-04 2:49 ` stephane richard
2004-10-04 13:44 ` David Botton
2004-10-05 1:25 ` David Botton
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox