Programming Scala, 2nd Edition
- Length: 586 pages
- Edition: 2
- Language: English
- Publisher: O'Reilly Media
- Publication Date: 2014-12-14
- ISBN-10: 1491949856
- ISBN-13: 9781491949856
- Sales Rank: #819003 (See Top 100 Books)
Programming Scala: Scalability = Functional Programming + Objects
Get up to speed on Scala, the JVM language that offers all the benefits of a modern object model, functional programming, and an advanced type system. Packed with code examples, this comprehensive book shows you how to be productive with the language and ecosystem right away, and explains why Scala is ideal for today’s highly scalable, data-centric applications that support concurrency and distribution.
This second edition covers recent language features, with new chapters on pattern matching, comprehensions, and advanced functional programming. You’ll also learn about Scala’s command-line tools, third-party tools, libraries, and language-aware plugins for editors and IDEs. This book is ideal for beginning and advanced Scala developers alike.
- Program faster with Scala’s succinct and flexible syntax
- Dive into basic and advanced functional programming (FP) techniques
- Build killer big-data apps, using Scala’s functional combinators
- Use traits for mixin composition and pattern matching for data extraction
- Learn the sophisticated type system that combines FP and object-oriented programming concepts
- Explore Scala-specific concurrency tools, including Akka
- Understand how to develop rich domain-specific languages
- Learn good design techniques for building scalable and robust Scala applications
Table of Contents
Chapter 1 Zero to Sixty: Introducing Scala
Chapter 2 Type Less, Do More
Chapter 3 Rounding Out the Basics
Chapter 4 Pattern Matching
Chapter 5 Implicits
Chapter 6 Functional Programming in Scala
Chapter 7 for Comprehensions in Depth
Chapter 8 Object-Oriented Programming in Scala
Chapter 9 Traits
Chapter 10 The Scala Object System, Part I
Chapter 11 The Scala Object System, Part II
Chapter 12 The Scala Collections Library
Chapter 13 Visibility Rules
Chapter 14 Scala’s Type System, Part I
Chapter 15 Scala’s Type System, Part II
Chapter 16 Advanced Functional Programming
Chapter 17 Tools for Concurrency
Chapter 18 Scala for Big Data
Chapter 19 Dynamic Invocation in Scala
Chapter 20 Domain-Specific Languages in Scala
Chapter 21 Scala Tools and Libraries
Chapter 22 Java Interoperability
Chapter 23 Application Design
Chapter 24 Metaprogramming: Macros and Reflection