‹ Back To Training

Introduction to Scala

Timeline: 5 Days

Topics

Expand All › ‹ Collapse All

  • About Scala
  • Setting up SBT
  • The Language
  • Primitive and simple types
  • Control structures
  • Better Access Modifiers
  • Lazy Values
  • Currying
  • Classes and Objects
  • Nulls, Nothing, and Units
  • Case Classes
  • Abstract Classes and Basic Traits
  • Functions and Higher Order Functions
  • Functions from Objects
  • Partial Functions
  • Recursion
  • Lists
  • Buffers
  • Sets
  • Maps
  • Arrays
  • Streams
  • Vectors and Tries
  • Options
  • For-Comprehensions
  • Traits
  • Parameterized Types and Abstract types
  • Self types
  • Path Dependent Types
  • Type Safe Duck Typing with Structural types
  • Covariance, Invariance, Contravariance
  • TypeTags and Reflections
  • Matching Lists, Options, Tuples, and Regular Expressions
  • Pattern Guards
  • Case Class and Sealed Case Class Matching
  • Custom Pattern Matching with Extractors
  • Implicit Conversions
  • Implicit Parameters
  • Type Classes
  • View Bounds
  • Scala and Java Interoperability
  • ScalaTest with Easy Mock
  • Specs2 with Mockito
  • ScalaMock
  • ScalaCheck
  • Dependency Injection with Java frameworks
  • Functional Patterns
  • Cake Pattern
  • Higher Kinded Types and Existentials
  • Setting up Akka
  • About Akka
  • Actors & Supervision