Publisher's Synopsis
This book describes a practical approach to object-orientedprogramming and design. After explaining the basic conceptsof object-orientation the book shows with numerous realisticexamples how this technique can be used to write extensibleand well-structured software. It discussed typical designpatterns and shows implementation techniques for frequentlyoccurring problems to be solved with object-orientedprogramming. Object-oriented programming is programming inthe large. Although it is possible to explain the basicconcepts withsmall examples it is necessary to study largeand realistic applications in order to understand the powerand elegance of this new technique. Therefore the bookcontains the design and full source code of a realistic casestudy - a window system with extensible text and graphicseditors. The programming language used in this book isOberon-2, the latest offspringof the Pascal and Modula-2family of languages developed at ETH Z}rich. Besidessatisfying the principle requirements of modern softwaresuch asstrong type checking, modularity andobject-orientedness one of the major advantages of thislanguage is its simplicity. Anyone who understands Pascalcan also read Oberon-2 programs. Compilers for Oberon-2 aswell as the source code of the case study in this book arefreely available from ETH.