Welcome to Central Library, SUST

Scala Design Patterns

Hunt, John.

Scala Design Patterns Patterns for Practical Reuse and Design / [electronic resource] : by John Hunt. - XXII, 327 p. 90 illus., 49 illus. in color. online resource.

Author’s Note -- Part I – Introduction -- Introduction -- Design Patterns -- UML and Scala -- Part II – Fundamental Patterns -- Immutability -- Singleton -- Marker Trait -- Delegation -- Part III – Code Reuse Patterns -- Lazy Parameters -- Partially Applied Functions -- Trait Based Template Operation -- Stackable Traits -- Currying and Code Reuse -- Cake Pattern -- Structural Injection -- Implicit Injection Pattern -- Part IV – Gang of Four Patterns -- Gang of Four Design Patterns -- Gang of Four Patterns Catalogs -- Factory Operation -- Abstract Factory Pattern -- Builder -- Adapter Pattern -- Decorator -- Facade -- Flyweight -- Proxy -- Filter -- Bridge -- Chain of Responsibility -- Command -- Strategy -- Mediator -- Observer -- State -- Visitor -- Memento -- Part V – Functional Design Patterns -- Functor -- Applicative Functor -- Monoid Pattern -- Monad Pattern -- Foldable -- Zipper -- Lens Pattern -- View Pattern -- Arrow Pattern.

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.

9783319021928

10.1007/978-3-319-02192-8 doi


Computer science.
Software engineering.
Computer programming.
Computer Science.
Software Engineering/Programming and Operating Systems.
Programming Techniques.

QA76.758

005.1