A Brief Intro to Scala

Heather Miller

What is Scala?

History

Adoption

According to StackOverflow and GitHub Scala is used a lot.

Momentum

Philosophy

First Example

Java

Scala

Using arrays in...

... Java:

... and in Scala:

Scala Basics

Running Scala

Essentials

Primitives

Complex numbers

Everything is an expression

Expression examples

What about println?

Classes and traits

Classes

When compiled, this class will look and behave exactly like the obvious translation to a Java class. No glue code necessary.

Traits

Trait example

Functional Programming

What is FP?

Scala as a Functional Programming Language

Function literals

Equivalent forms

Higher-Order Functions

Higher-Order Functions: Examples

Everything is an object

Syntactic Sugar

Function Subtypes

Standard Library

Collections

Example: Maps

For-comprehensions

For-comprehensions

Pattern matching

Pattern matching

Open-Source Ecosystem

Scala Open Source Project

Scala modules

Building and Testing

Testing with ScalaTest

ScalaCheck: Property-based testing

Thanks!

Questions!

#

/