'Scientific software must be consciously designed to grow with a research program and the hardware that supports the research program. And how to do that is precisely what these authors in this book have shown.' Scientific Programming
Preface; Part I. The Tao of Scientific OOP: 1. Development costs and complexity; 2. The object-oriented way; 3. Scientific OOP; Part II. SOOP to Nuts and Bolts: 4. Design patterns basics; 5. The object pattern; 6. The abstract calculus pattern; 7. The strategy and surrogate patterns; 8. The puppeteer pattern; 9. Factory patterns; Part III. Gumbo SOOP: 10. Formal constraints; 11. Mixed-language programming; 12. Multiphysics architectures.