1

Hands-on Scala

1.1 Why Scala? 15 1.2 Why This Book? 16 1.3 How This Book Is Organized 17 1.4 Code Snippet and Examples 19 1.5 Online Materials 21

package app object MinimalApplication extends cask . MainRoutes { @cask . get ( "/" ) def hello ( ) = { "Hello World!" } initialize ( ) } </> 1.1.scala

Snippet 1.1: a tiny Scala web app, one of many example programs we will encounter in this book

Hands-on Scala teaches you how to use the Scala programming language in a practical, project-based fashion. Rather than trying to develop expertise in the deep details of the Scala language itself, Hands-on Scala aims to develop expertise using Scala in a broad range of practical applications. This book takes you from "hello world" to building interactive websites, parallel web crawlers, and distributed applications in Scala.

The book covers the concrete skills necessary for anyone using Scala professionally: handling files, data serializing, querying databases, concurrency, and so on. Hands-on Scala will guide you through completing several non-trivial projects which reflect the applications you may end up building as part of a software engineering job. This will let you quickly hit the ground running using Scala professionally.