Object Oriented GIS Andrew U. Frank Geoinfo TU Vienna overheads available from:
June 29, 1998 Brno Panel Overview: Definition of Object-Orientation Object-Orientation for GIS
June 29, 1998 Brno Panel Object-Orientation - what does this mean? To many, it means, use of an object-oriented language. SmallTalk, C++, Java A more theoretical point would be: modeling with objects.
June 29, 1998 Brno Panel Objects? Cognition: People understand their world in term of objects (not fields) I eat an apple, I throw a stone. Objects have properties can be involved in operation
June 29, 1998 Brno Panel Object Theory base Algebra: set of operations applicable to a set of objects axioms define the behavior example stack: push: element x stack -> stack pop: stack -> stack top: stack -> element Axioms: pop (push (e1, s)) = s top (push (e1, s)) = e1
June 29, 1998 Brno Panel Object Theory A theory for the existing object-oriented programming languages. Book by Cardelli: Theory including inheritance and ‘self’ is very complex. VERY complex… no wonder, programmers have a hard time understanding and using it.
June 29, 1998 Brno Panel Algebra applied to Functional Programming Languages separate: behavior from representation behavior = set of operations and axioms representation = data build as instance the connection between a behavior and a representation; multiple inheritance comes for free Realized in Gofer and Haskell 1.4 good, simple theory - directly related to denotational semantics
June 29, 1998 Brno Panel Object-Orientation in the Practical World: Object-Oriented Databases Practically difficult (with C++ and the likes) Small differences in the OO model (given the complexity of the theory) Within Chorochronos (an EC funded project) a spatio-temporal (object-oriented) data base is emerging
June 29, 1998 Brno Panel Object Orientation for GIS - what does this mean? Two Interpretations: OO programming language used for the construction of limited interest - one may assume that the software is better and can be maintained better
June 29, 1998 Brno Panel Object Oriented for GIS: a GIS with objects Good points: Operations are related to Objects (object enhanced RDBMS) extensible with operations Operations can be visualization methods. Issue: identifiers for objects and changes of objects?
June 29, 1998 Brno Panel Object Orientation for GIS: Open GIS defined in terms of objects and operations, but can be implemented in various environments. Difficult task: assure that it works in different OO environments.
June 29, 1998 Brno Panel Conclusions: OO methods are fundamental for the design and the implementation of complex system like a GIS Clarification of the OO theory is urgent (and simplification is necessary) Better tools are necessary UML is a step in the right direction (but very primitive and simplistic)