Re: The wisdom of the object mentors (Was: Searching OO Associations with RDBMS Persistence Models)

From: Robert Martin <>
Date: Tue, 20 Jun 2006 15:16:29 -0400
Message-ID: <2006062015162994091-unclebob_at_objectmentorcom>

On 2006-06-16 16:40:23 -0400, "topmind" <> said:

> Robert Martin wrote:

>> On 2006-06-01 12:56:01 +0200, said:
>>> The big questing is: Why do you want to unplug the SQL DBMS?

>> I don't. Just like I don't want to disconnect my engine from my car.
>> However, I want the car designed such that the engine can be
>> disconnected.
>> I don't want to replace the DB, I just want it to be replaceable. This
>> just makes for good modularity, and good testability. I do not want to
>> sacrifice any of the power of the DB, I just want to place the code
>> that uses that power in a place that the rest of the application is not
>> directly aware of.
> Indirection is NOT free.

Neither is the alternative. There's always a tradeoff to make.

> Having "official" interfaces between everything in the app can make for
> bloated, verbose code that is time-consuming to maintain.

True. It can also make for flexible code that is easy to test and is easy to change.

And, depending on your language, you may not need the "official" interfaces.

Robert C. Martin (Uncle Bob)  | email:
Object Mentor Inc.            | blog:
The Agile Transition Experts  | web:
800-338-6716                  |
Received on Tue Jun 20 2006 - 21:16:29 CEST

Original text of this message