REVIEW - Objects and Systems - Principled Design with Implementations in C++ and Java


Objects and Systems

Principled Design with Implementations in C++ and Java


Bernard P. Zeigler



Springer (1997)




Brian Bramer


October 1998



The subtitle of this book is Principled design with implementations in C++ and Java . It presents a semi-formal introduction to OO software design and application programming.

It does not teach programming (it assumes the reader is competent in C++) or design (as a book on UML would do) but attempts to bridge the gap between design and implementation. In particular it makes use of a semi- formal behaviour specification language based on state-transition concepts. For example, it starts with the state diagram of a simple binary counter and then implements it in C and C++; to show the problems of non-OO approach and how this can be overcome. The object behaviour specification language is then described and an abstract model of a list specified (the important of abstract models is emphasised so that a model can be proved correct independent of implementation). Serial and parallel implementations are then described. The book continues with this semi-formal approach, formulating primitives to build up a hierarchy of containers. The concept of ensemble methods (which treat all items in a container as a group) is discussed and how effective they can be in parallel processing implementations. The main implementation language is C++ with a final chapter using Java (of particular interest is the use of threads which enable the implementation of ensemble methods in a parallel/distributed environment).

Not the usual programming/design book! Well worth considering for a second level software-engineering module (following a first level programming module) which could then be followed by a third level module on formal methods.

Book cover image courtesy of Open Library.

Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED

By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED

Settings can be changed at any time from the Cookie Policy page.