Project Butterfly



 An object-oriented C++ graphics

 framework by Walt Davis    


Butterfly Theory
Butterfly Whitepaper
Butterfly Code


"Project butterfly was my first experience with object-oriented programming. Using C++ I explored the constructs of object oriented analysis/design and built a reusable framework for computer aided graphics. From this experience I learned that broad shallow inheritance hierarchies are much better than narrow deep ones. I learned the importance of  sub-typing (interfaces) over sub-classing.  I learned the power of object based (the use of aggregation and encapsulation) vs. other object oriented programming techniques; perhaps better thought of as component based."

I, the copyright holder of this work, hereby grant the permission to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.

Copyleft 1995 Walt Davis