|
Download a PDF version of this Article Table of contents: Dynamic Containers™: The Key To Superior Performance
Deployment Examples |
Data Model Abstraction: When writing ODBMS applications in C++, issues of encapsulation become more important than normal because the physical storage of objects is something which the application developer should not have to worry about when he is re-using libraries of persistent classes written by the schema developer. It is not possible to make using persistent objects as easy as using transient objects but our goal should be to get as close as possible to this ideal. A detailed implementation example is shown in the Appendix. By imposing an abstraction layer between the business objects and the underlying data model, it becomes much easier to tune the performance or reorganize the data layout of your persistent objects at a later time. By following the pattern described here, the lifetime of persistent objects is all managed in a small number of methods which can be changed without affecting the rest of your application. This may be more work in the beginning but like other software engineering practices, it will pay off later.
|
Copyright © Objectivity, Inc. 2000-2007. All Rights Reserved.