Scala: Advanced Object-Functional Programming Training Course
Course
In City Of London
Description
-
Type
Course
-
Location
City of london
Scala is a concise, object-oriented language with functional programming features, including currying, type inference, immutability, lazy evaluation, and pattern matching. Scala code runs on a JVM and was designed to address some of the shortcomings of Java.
In this instructor-led, live training participants will learn how to use Scala's advanced features, including its type system, to write better code using an object-functional approach.
By the end of this training, participants will be able to:
Leverage Scala's type system to maximum benefit
Handle exceptions functionally
Create libraries and DSLs with Scala
Use Scala's advanced features for pattern matching
Audience
Scala programmers who wish to learn the more advanced and nuanced features of Scala
Format of the course
Part lecture, part discussion, exercises and heavy hands-on practice
Facilities
Location
Start date
Start date
Reviews
Subjects
- Programming
- Evaluation
Course programme
Introduction
Scala as a JVM language
Objection-oriented programming vs functional programming
Overview of object-functional programming
Tail recursion
Partial functions
Currying and partial function application
Closures
Lazy evaluation
Mastering the Scala type system
About traits
Structural types
Path dependent types
Self types
Covariance and contravariance
Type bounds
Advanced pattern matching in Scala
Deep matching
Using extractors
Using Scala Implicit
Implicit conversion, classes and parameters
Type class pattern
Context and view bounds
Libraries and DSLs
Custom control structures with by-name parameters
Building well-designed libraries and internal DSLs
Working with Scala collections
Working with Streams
Manifests and class tags
Builders
CanBuildFrom
Building custom collections
Functional exception handling
Traditional exception handling
Functional exception handling
Using Try with For comprehensions
Closing remarks
Scala: Advanced Object-Functional Programming Training Course