<p>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.</p><p><i>Scala Design Patterns</i> looks at how code reuse can be successful
Scala Design Patterns: Patterns for Practical Reuse and Design
β Scribed by John Hunt (auth.)
- Publisher
- Springer International Publishing
- Year
- 2013
- Tongue
- English
- Leaves
- 324
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
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.
β¦ Table of Contents
Front Matter....Pages i-xxii
Front Matter....Pages 1-1
Introduction....Pages 3-11
Design Patterns....Pages 13-22
UML and Scala....Pages 23-50
Front Matter....Pages 51-51
Immutability....Pages 53-59
Singleton....Pages 61-69
Marker Trait....Pages 71-75
Delegation....Pages 77-83
Front Matter....Pages 85-85
Lazy Parameters....Pages 87-91
Partially Applied Functions....Pages 93-97
Trait Based Template Operation....Pages 99-102
Stackable Traits....Pages 103-107
Currying and Code Reuse....Pages 109-114
Cake Pattern....Pages 115-119
Structural Injection....Pages 121-125
Implicit Injection Pattern....Pages 127-131
Front Matter....Pages 133-133
Gang of Four Design Patterns....Pages 135-136
GoF Patterns Catalog....Pages 137-146
Factory Operation....Pages 147-154
Abstract Factory Pattern....Pages 155-161
Builder....Pages 163-168
Front Matter....Pages 133-133
Adapter Pattern....Pages 169-181
Decorator....Pages 183-188
FaΓ§ade....Pages 189-194
Flyweight....Pages 195-200
Proxy....Pages 201-205
Filter....Pages 207-213
Bridge....Pages 215-221
Chain of Responsibility....Pages 223-231
Command....Pages 233-238
Strategy....Pages 239-243
Mediator....Pages 245-255
Observer....Pages 257-262
State....Pages 263-269
Visitor....Pages 271-276
Memento....Pages 277-282
Front Matter....Pages 283-283
Functor....Pages 285-289
Applicative Functor....Pages 291-296
Monoid Pattern....Pages 297-300
Monad Pattern....Pages 301-306
Foldable....Pages 307-310
Front Matter....Pages 283-283
Zipper....Pages 311-314
Lens Pattern....Pages 315-318
View Pattern....Pages 319-322
Arrow Pattern....Pages 323-327
β¦ Subjects
Software Engineering/Programming and Operating Systems; Programming Techniques
π SIMILAR VOLUMES
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.<br><br>Scala Design Patterns looks at how code reuse can be successfully achiev
<p>Pattern Design: Fundamentals is an ideal book for beginners to the field of fashion design as well as self-guided learners. Pattern Design: Fundamentals covers the basics of pattern making, terminology and drafting concepts. This book is different than all other drafting books of its kind. This d
<p><b>A detailed and easy-to-follow guide to learning design patterns and modern best practices for improving your TypeScript development skills</b></p><h4>Key Features</h4><ul><li>Understand, analyze, and develop classical design patterns in TypeScript</li><li>Explore advanced design patterns taken