Slide 29 of 52
Notes:
3 solutions: 1. OO Methodology, 2. Meyer 'design by contract', 3. Design patterns.
OO GIS rarely/never provide a seamless interface to persistent programming (as is the aim of generic OODBMSs such as POET or ObjectStore) for good reasons.
STL: C++ Standard Template Library, ATL: Microsoft Active Template Library makes it easier for Visual C++ programmers to write ActiveX components. Java comes with a class library and AWT (abstract windowing kit) + JavaBeans components
A further complication arise because Windows applications in
Visual C++ are constructed by Microsoft Wizards which provide a
great deal of default complexity. The benefit of this complexity
is standardisation: all Visual C++ applications of a particular
type are structured in the same way: this greatly aids
maintenance and extensibility, but makes for a steep learning
A very good principle is to design class hierarchies as if you are going to do a series of related GIS projects.