REVIEW - Java Design - Building Better Apps and Applets


Java Design

Building Better Apps and Applets


Peter Coad, Mark Mayfield



Pearson (1997)




Brian Bramer


August 1998



I found this a very interesting, well written and presented book (as one would expect from Peter Coad).


Design is just as important as programming in overall system implementation. The subtitle of this text is 'Building better applications and applets' and is aimed at choosing better design strategies inspired by the features of the Java language.

The first chapter introduces design using two practical case studies; in effect breaking the design process (which is then used in the rest of the book) down into five concurrent activities: identify system purpose and features, select classes, sketch user interface, work out dynamics with scenarios and build an object model. There are then four chapters concentrating on particular aspects of design with Java. Design with composition: the thesis being composition (being more flexible) should be the norm and inheritance (being more rigid) the exception, i.e. deciding when inheritance should be used. Design with interfaces: how Java style interfaces support 'flexibility, extensibility and pluggability'. Design with threads: how to use concurrency with safety, i.e. problems with shared resources, deadlocks, synchronising, etc. Design with notification: how objects notify each other about changes. Throughout designs are illustrated using a mixture of Coad object model, Coad scenario view and UML (Unified Modelling Language) notation.

I found this a very interesting, well written and presented book (as one would expect from Peter Coad). It would be suitable as a text for a course on program design where Java is being used as the implementation language or on a Java programming course as a secondary text to highlight design aspects. Also useful for the professional programmer concerned with the design of large Java based systems. Recommended!

Book cover image courtesy of Open Library.

Your Privacy

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

By clicking "Share IP Address" you agree ACCU can forward your IP address to third-party sites to enhance the information presented on the site, and that these sites may store cookies on your device.