Book Description
This groundbreaking book presents a complete methodology for adaptive programming in any object-oriented language. Lieberherr's method provides a new approach to object-oriented program design that goes beyond object encapsulation and hard-coded navigation paths to achieve more flexible interactions among objects. Designers using this adaptive method work at a higher, more schematic level of abstraction to design software programs. Graph notation is used to represent the class structure of the program, and a "propagation pattern" language describes how to distribute meaningful methods (including navigation) across the program's structure. Using this method, software designers can create programs that are easily modified and adaptable as needs evolve./p>
Reviews From AMAZON.COM
Vague idea, poor presentation
The only reason I wouldn't tell you to completely ignore this book is that its an interesting area, worthy of research, and that very few other researchers have been as ambitious as Lieberherr in moving beyond OO. Unfortunately apart from highlighting the problems of OO successfully, he singularly failed to convince me of the adaptvie OO approach. Maybe there's something in there of merit, but I don't feel like wasting too much time separating the chaff from the wheat :(
Obscure programming methodology with hardly any takers
Demeter is a programming methodology where the "structure" of the program is separated from its "actions".
The structure is specified in a manner similar to language grammars and the actions which are called propagation patterns are written as traversals.
Unfortunately the methodology makes programming more complicated. The abstraction methods (class dictionary and propagation patterns) are arcane and not understandable to anyone other than a CS researcher with no industry experience.
Programming the Demeter way is not of much use unless you also have the demeter software to go with it. They tried to hawk it commercially some time ago but it did not succeed.
Instead of this book I suggest you look at "Structure and Interpretation of Computer Programs" for a serious yet eminently practical introduction to computing and the paradigms of computing.

ISBN:053494602X