Garage is a (IMO lousy named) Pharo database interface abstraction,
like Perl's DBI, ADODB, or JDBC.
Any program that uses Garage's objects to access the database should
be abstract enough to enable you to replace the backend by something
else without changing the programming logic (e.g. replace PostgreSQL
by SQLite).
DBXTalk is the same, but at the database driver level, it uses the
OpenDBX database drivers.

So the relation would be:
DB Interface -> DB Adapter -> DB Driver

With these possible combinations (among others):
Garage -> DBXTalk -> OpenDBX libs (libopendbx.so/dll)
Garage -> PostgreSQLv2 -> (written in Smalltalk)
Garage -> SQLite -> (written in Smalltalk)

The confusion comes also when you add GLORP (ORM) to the combo, which
is the most common use case when dealing with RDBMS, with the added
misnomer of GLORP calling "Driver" what in practice is an Adapter
(pattern) written in Smalltalk .

So you have the following
GlorpDriver (Adapter) -> DB Interface

So:
GlorpDBXTalk -> Garage
GlorpPostgresV2 -> PostgresV2
GlorpSQLite -> PunQLite


The benefits of having an abstraction layer like Garage are many,
maybe the misnomer and the lack of coordination provokes this
confusion.

Regards!

--
Esteban A. Maringolo


















Esteban A. Maringolo


2015-08-03 10:35 GMT-03:00 Sean P. DeNigris <s...@clipperadams.com>:
> vmusulainen wrote
>> http://pharo.org/news/garage-database
>
> I'm also confused. What is the relationship between OpenDBX and Garage? IIRC
> DBXTalk was the previous name of OpenDBX, right? Maybe an FAQ is in order as
> the DB-related names seem to be multiplying ;)
>
>
>
> -----
> Cheers,
> Sean
> --
> View this message in context: 
> http://forum.world.st/Garage-Glorp-PostgreSQL-and-Cursors-tp4840760p4840771.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>

Reply via email to