This book is for readers with backgrounds in science engineering who have experience in computer programming but who lack training in software engineering. It teaches object-oriented design patterns in a real-world context, which is relevant to computational science. Coverage is centered around a case study in software development in e-science using the Java™ programming language. A graphical front-end for browsing and visualizing scientific waveform data is progressively refactored using important design patterns for object-oriented software and the final product is ready for porting onto the Grid.
Construction of a Waveform Browser.- e-Science and EScope.- A Java Client for MDSplus.- Graphical User Interfaces Using Swing.- Waveform Graphics.- Interactive Graphics Using Mouse Events.- Navigating the Database.- Refactoring EScope with Design Patterns.- Object-Oriented Analysis and Design.- First Facades.- Adapter.- The Template Pattern.- Decorator.- Patterns at Work: Multiple Waves.- Patterns at Work: Multiple Graphs.- Observer.- Proxy.- State.- Factory Patterns.- Chain of Responsibility.- Design Patterns and Threads.- Postscript.