Scala Design Patterns
Scala is a new and exciting programming language that is a hybrid between object oriented languages such as Java and functional languages such as Haskell. As such it has its own programming idioms and development styles.
Scala Design Patterns looks at how code reuse can be successfully achieved in Scala. A major aspect of this is the reinterpretation of the original Gang of Four design patterns in terms of Scala and its language structures (that is the use of Traits, Classes, Objects and Functions). It includes an exploration of functional design patterns and considers how these can be interpreted in Scala's uniquely hybrid style.
A key aspect of the book is the many code examples that accompany each design pattern, allowing the reader to understand not just the design pattern but also to explore powerful and flexible Scala language features. Including numerous source code examples, this book will be of value to professionals and practitioners working in the field of software engineering.
Interprets purely Functional Patterns in terms of design patterns for use in Scala's hybrid styleIllustrates how to maximise code reuse through functions, currying, and dependency injection using Scala language facilitiesPresents the Gang of Four Design Patterns using Scala language structures (which differ significantly from languages such as Java with the inclusion of Functions as first class language elements)