In our first chapter, we will learn the basic concepts of Functional Programing (FP), reactive programming, and the Scala language. These concepts are listed as follows:
Setting up a Scala development environment with Eclipse Scala IDE.
Basic constructs of the language like var, val, for, if, switch, and operator overload.
The difference between FP and object-oriented programming.
Principles of pure FP: immutability, no side effects, state discipline, composition, and higher order functions.
Concepts of FP such as lambda, recursion, for comprehensions, partial functions, Monads, currying, and functions.
Pattern Matcher, recursion, reflection, package objects, and concurrency.
Let's get going!