views:

718

answers:

3

Do you know of well designed open source applications that are instructive to analyse?

Specifically, I'm interested in practical applications object-relational mapping in C++ based programs, where there is a good separation between a domain model and persistence/serialization functionality.

+1  A: 

While this doesn't fit your specific requirements (it's not a business app for a start), I think that OGRE 3D is a great example of an open source C++ project.

jonnii
+3  A: 

If you include well designed open source libraries that are instructive to analyse, have a look at Boost.

About persistence / serialization (not relational mapping though), have a look at Boost Serialization, you might find nice ideas!

"...one of the most highly regarded and expertly designed C++ library projects in the world." — Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

"Item 55: Familiarize yourself with Boost." — Scott Meyers, Effective C++, 3rd Ed.

"The obvious solution for most programmers is to use a library that provides an elegant and efficient platform independent to needed services. Examples are BOOST..." — Bjarne Stroustrup, Abstraction, libraries, and efficiency in C++

Sébastien RoccaSerra
+1  A: 

V8 javascript engine is said to be very well engineered. http://code.google.com/p/v8/

Google Chrome also has an interesting architecture and high quality code base. http://code.google.com/chromium/

Both are open source, under BSD-like license.

phjr