This article is from the Object-Oriented Technology FAQ, by Bob Hathaway rjh@geodesic.com with numerous contributions by others.
PERSISTENCE(TM): BRIDGING THE GAP BETWEEN OBJECT
ORIENTED DEVELOPMENT AND RELATIONAL DATA
Persistence is an application development tool which provides object
oriented access to existing relational data. Persistence uses an
automatic code generator to convert object models into C++ classes
which know how to read and write themselves to a relational database.
Leverage existing data
Persistence enables object oriented access to existing relational
databases. Applications built with Persistence can work side by side
with legacy systems.
Automate database access
By generating the methods to convert relational data into objects,
Persistence saves the developer from having to write literally hundreds
of lines of code per class.
Speed application development
With Persistence, major changes to the application object model can be
completed in minutes, not weeks.
Quality
Persistence generates tested, bug-free code. Using Persistence helps
ensure the reliability and reusability of your applications.
Performance
At Runtime, Persistence manages an object cache to enhance performance
while ensuring data integrity. The Persistence object cache can provide
a factor of ten performance improvement for data intensive
applications.
Portability
Code generated by Persistence is database independent. You can choose
which database to work with at link step, increasing application
portability.
TECHNICAL SPECIFICATIONS
The Persistence Database Interface Generator converts object schemas
into C++ classes.
Custom
Code
|
v
Object schema ---> Persistence ----> Generated
Generator Classes
^
|
v
Persistence
Object Cache
^
|
v
Legacy Data
 
Continue to: