Session

Object-oriented Database Design

David Wheeler, CTO, Values of n

Track: Databases
Date: Friday, July 28
Time: 10:45am - 11:30am
Location: Portland 252

Developers of database-backed object-oriented applications sooner or later run up against the so-called impedance mismatch between relational databases and object-oriented design. Developers typically turn to an object-relational mapper to abstract away the mismatch, but really, it's still there, handled by complex application-space code that just treats the database as a simple data store.

But given the power of today's RDBMSs, does the impedance mismatch really exist?

This session advocates a different approach to object/relational interaction: object-oriented database design. This approach takes advantage of the advanced features of the database to move object/relational mapping into the database itself. Come to this session and see examples of how to leverage database features such as views, rules, triggers, and domains to eliminate the impedance mismatch. Examples from PostgreSQL and SQLite demonstrate the use of classes, objects, strongly typed and complex attributes, inheritance, polymorphism, aggregation, and encapsulation at the database level, while simplifying your application source code.