- eBook:Learn Scala Programming: A comprehensive guide covering functional and reactive programming with Scala 2.13, Akka, and Lagom
- Author:Slava Schmidt
- Data:October 31, 2018
- Pages:498 pages
- Develop a strong foundation in functional programming and Scala's Standard Library (STL)
- Get a detailed coverage of Lightbend Lagom―the latest microservices framework from Lightbend
- Understand the Akka framework and learn event-based Programming with Scala
Book DescriptionThe second version of Scala has undergone multiple changes to support features and library implementations. Scala 2.13, with its main focus on modularizing the standard library and simplifying collections, brings with it a host of updates.
Learn Scala Programming addresses both technical and architectural changes to the redesigned standard library and collections, along with covering in-depth type systems and first-level support for functions. You will discover how to leverage implicits as a primary mechanism for building type classes and look at different ways to test Scala code. You will also learn about abstract building blocks used in functional programming, giving you sufficient understanding to pick and use any existing functional programming library out there. In the concluding chapters, you will explore reactive programming by covering the Akka framework and reactive streams.
By the end of this book, you will have built microservices and learned to implement them with the Scala and Lagom framework.
What you will learn
- Acquaint yourself with the new standard library of Scala 2.13
- Get to grips with the Grok functional paradigms
- Get familiar with type system to express domain constraints
- Understand the actor model and different Akka libraries
- Grasp the concept of building microservices using Lagom framework
- Deep dive into property-based testing and its practical applications
Who this book is forThis book is for beginner to intermediate level Scala developers who would like to advance and gain knowledge of the intricacies of the Scala language, expand their functional programming tools, and explore actor-based concurrency models.
2. Understanding Types in Scala
3. Deep Dive into Functions
4. Getting to know Implicits and Type Classes
5. Property based testing in Scala
6. Exploring Build-in Effects
7. Understanding Algebraic Structures
8. Dealing with Effects
9. Familiarizing Yourself with Basic Monads
10. A Look at Monad Transformers and Free Monad
11. An Introduction to Akka and Actor Models
12. Building Reactive Applications with Akka Typed
13. Basics of Akka Streams
14. Building Microservices with Scala
15. Building Microservices with Lagom