A beginner's guide to Scala, object orientation and functional programming /
General Material Designation
[Book]
First Statement of Responsibility
John Hunt.
EDITION STATEMENT
Edition Statement
Second edition.
PHYSICAL DESCRIPTION
Specific Material Designation and Extent of Item
1 online resource (XIX, 531 pages) :
Other Physical Details
108 illustrations, 64 illustrations in color
CONTENTS NOTE
Text of Note
Introduction -- Elements of Object Orientation -- Why Object Orientation? -- Constructing an Object Oriented System -- Functional Programming -- Scala Background -- A Little Scala -- Scala Building Blocks -- Scala Classes -- Scala Methods -- Packages and Encapsulation -- Building a class -- Classes, Inheritance and Abstraction -- Objects and Instances -- Value Classes -- Scala Constructs -- Control and Iteration -- Traits -- Further Traits -- Arrays -- Tuples -- Functional Programming in Scala -- Higher Order Functions -- Partially Applied Functions and Currying -- Scala Collections Framework -- Immutable Lists and Maps -- Immutable and Mutable Collection Packages -- Type Parameterization -- Further Language Constructs -- Exception Handling -- Akka Actors -- Further Akka Actors -- Scala and JDBC Database Access -- Scala Style Database Access -- Slick: Functional Relational Mapping for Scala -- Testing -- Scala Testing -- Play Framework -- RESTful Services -- Scalaz -- GUIs in Scala Swing -- User Input in Scala Swing -- Scala Build Tools -- Scala and Java Interoperability.
0
SUMMARY OR ABSTRACT
Text of Note
Scala is now an established programming language developed by Martin Oderskey and his team at the EPFL. The name Scala is derived from Sca(lable) La(nguage). Scala is a multi-paradigm language, incorporating object oriented approaches with functional programming. Although some familiarity with standard computing concepts is assumed (such as the idea of compiling a program and executing this compiled from etc.) and with basic procedural language concepts (such as variables and allocation of values to these variables) the early chapters of the book do not assume any familiarity with object orientation nor with functional programming These chapters also step through other concepts with which the reader may not be familiar (such as list processing). From this background, the book provides a practical introduction to both object and functional approaches using Scala. These concepts are introduced through practical experience taking the reader beyond the level of the language syntax to the philosophy and practice of object oriented development and functional programming. Students and those actively involved in the software industry will find this comprehensive introduction to Scala invaluable.