Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Independent

Scala School!

Scala School via Independent

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!

Scala school started as a series of lectures at Twitter to prepare experienced engineers to be productive Scala programmers. Scala is a relatively new language, but draws on many familiar concepts. Thus, these lectures assumed the audience knew the concepts and showed how to use them in Scala. We found this an effective way of getting new engineers up to speed quickly. This is the written material that accompanied those lectures. We have found that these are useful in their own right.

Syllabus

  • Basics
    • Values, functions, classes, methods, inheritance, try-catch-finally. Expression-oriented programming
  • Basics continued
    • Case classes, objects, packages, apply, update, Functions are Objects (uniform access principle), pattern matching.
  • Collections
    • Lists, Maps, functional combinators (map, foreach, filter, zip, folds)
  • Pattern matching & functional composition
    • More functions! PartialFunctions, more Pattern Matching
  • Type & polymorphism basics
    • Basic Types and type polymorphism, type inference, variance, bounds, quantification
  • Advanced types
    • Advanced Types, view bounds, higher-kinded types, recursive types, structural types
  • Simple Build Tool
    • All about SBT, the standard Scala build tool
  • More collections
    • Tour of the Scala Collections library
  • Testing with specs
  • Concurrency in Scala
    • Runnable, Callable, threads, Futures
  • Java + Scala
    • Java interop: Using Scala from Java
  • An introduction to Finagle
    • Finagle primitives: Future, Service, Filter, Builder
  • Searchbird
    • Building a distributed search engine using Finagle

Reviews

Start your review of Scala School!

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.