Programming in Scala: A Comprehensive Step-by-Step Guide, 2nd Edition

Category: Programming
Author: Martin Odersky, Bill Venners
4.3

About This Book

Programming in Scala, Second Edition, is the definitive book on Scala, the new language for the Java Platform that blends object-oriented and functional programming concepts into a unique and powerful tool for developers.

This second edition provides more than 100 pages of new material that covers new features in Scala 2.8.Coauthored by the designer of the Scala language, this authoritative book will teach you, one step at a time, the Scala language and the ideas behind it.The book is carefully crafted to help you learn. The first few chapters will give you enough of the basics that you can already start using Scala for simple tasks.

The entire book is organized so that each new concept builds on concepts that came before - a series of steps that promises to help you master the Scala language and the important ideas about programming that Scala embodies.A comprehensive tutorial and reference for Scala, this book covers the entire language and important libraries.

This second edition covers many features introduced or enhanced in the 2.8 release, including:

- The design of the new collections library
- Structural subtyping
- The new rules for implicits
- Package objects
- Chained package clauses
- Named and default parameters
- The copy method on case classes

Comments

by anonymous   2017-12-24
I think that goes beyond the scope of the question, and the topic of inheritance usually takes up complete chapters in Object-Oriented Programming books. I suggest you read [Programming in Scala](https://www.amazon.com/Programming-Scala-Comprehensive-Step-Step/dp/0981531644) so you get a better explanation on `extends`, `override`, `this` and `super` than any I could write in a few hundred characters. I mean this in the best way possible, as it's a prerequisite for more advanced stuff down the road.