C++
Below is a brief overview of several C++ projects I was responsible for. Information about these projects is already publicly available.
- Client Infrastructure Library Wrapper
The underlying infrastructure was a complex company-wide system that integrated three key components: a persistence layer, a shared cache, and a messaging component. The purpose of the wrapper was to hide this complexity from end users, simplifying infrastructure usage and enabling easier integration with third-party libraries and legacy systems.
For more information see Presentations .
- Database Design and DB Library Wrapper
All database-related activities were my responsibility, covering both data management and code. We have used the c-tree Plus library as an embedded db engine in the application process address space.
To simplify and standardize database access, I developed an application-specific Object-to-Datastore Mapping library-essentially a wrapper around c-tree. This wrapper was used by the entire development team for all database calls.
Later, I added SQL support to the library, enabling integration with Sybase as an SQL database. The transition from c-tree to Sybase was smooth, and developers had the flexibility to choose between an embedded database and a Sybase server, depending on the needs of each project.
Beyond these projects, I participated in various C++ discussion groups, provided C++ consultations, and taught C++ classes. I also moderated the NYC Design Patterns Study Group and posted summaries of our discussions; most of the code samples were in C++.
After reading an early edition of Scott Meyers’ Effective C++, I reached out to the author with my comments. This led to an extensive email correspondence, which continued after the publication of his next book, More Effective C++. Scott Meyers cited me in subsequent editions of both Effective C++ and More Effective C++.
Below are some of the C++ libraries and tools I have worked with. For memory management, I often relied on smart pointers.
STL, Rogue Wave libraries, Orbix, CORBA, TIBCO, c-tree Plusmore ...