The Scala Programming Language was invented in 2004 in an attempt to bring functional programming to the jvm, and the java development community. It has risen to prominence in recent years as the de-facto language to compliment and replace java in existing teams, and as an advanced and capable language on greenfield projects.
Scala combines advanced techniques long established in the functional programming community with the best practices of object-orientation, allowing developers to pick and chose a style and an approach that suits their team and their problems.
By the end of this course delegates will have a clear understanding of object orientation and functional programming, and in particular, all the major features of scala which enable these styles of programming to be used and combined.
At the end of this course you will be able to
- Understand the difference between mutable and immutable data
- Understand the basic syntax used by Scala
- Be able to create objects and classes using Scala
- Understand variable scoping and Implicit function calls
- Understand traits and inheritance
- Have an understanding of the functional programming paradigm and how it differs from the object oriented approach
- Understand the concept of currying and lambda functions
- Be able to use collections and generics with functional programming
- Understand pattern matching