Course Outline

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

Requirements

  • Hands on experience in Scala programming
  • Familiarity with pattern matching and traits

Audience

  • Scala programmers who wish to learn the more advanced and nuanced features of Scala
 14 Hours

Delivery Options

Private Group Training

Our identity is rooted in delivering exactly what our clients need.

  • Pre-course call with your trainer
  • Customisation of the learning experience to achieve your goals -
    • Bespoke outlines
    • Practical hands-on exercises containing data / scenarios recognisable to the learners
  • Training scheduled on a date of your choice
  • Delivered online, onsite/classroom or hybrid by experts sharing real world experience

Private Group Prices RRP from €4560 online delivery, based on a group of 2 delegates, €1440 per additional delegate (excludes any certification / exam costs). We recommend a maximum group size of 12 for most learning events.

Contact us for an exact quote and to hear our latest promotions


Public Training

Please see our public courses

Provisional Upcoming Courses (Contact Us For More Information)

Related Categories