Book Image

Professional Scala

By : Mads Hartmann, Ruslan Shevchenko
Book Image

Professional Scala

By: Mads Hartmann, Ruslan Shevchenko

Overview of this book

This book teaches you how to build and contribute to Scala programs, recognizing common patterns and techniques used with the language. You’ll learn how to write concise, functional code with Scala. After an introduction to core concepts, syntax, and writing example applications with scalac, you’ll learn about the Scala Collections API and how the language handles type safety via static types out-of-the-box. You’ll then learn about advanced functional programming patterns, and how you can write your own Domain Specific Languages (DSLs). By the end of the book, you’ll be equipped with the skills you need to successfully build smart, efficient applications in Scala that can be compiled to the JVM.
Table of Contents (12 chapters)

Chapter 3. Functions

In the previous chapter, we covered the object-oriented aspects of Scala, such as classes, objects, pattern matching, self-types, case classes, and so on. We also implemented object-oriented concepts that we learned in our chatbot application.

In this chapter, we will cover functional programming with Scala and how object-oriented and functional approaches complete each other. We will also cover generic classes, which are often used with pattern matching. We will also cover how to create user-defined pattern matching and why is it useful.

By the end of this chapter, you will be able to:

  • Identify the basics of functional programming

  • Identify the basics of generic types in Scala

  • Implement user-defined pattern matching

  • Recognize and use functional compositional patterns