A Beginner's Guide to Scala, Object Orientation and Functional Programming
- 6h 34m
- John Hunt
- Springer
- 2014
- Unlike other books currently on the market this title does not assume that the reader is already proficient in an object-oriented language such as Java.
- All examples are complete and can be downloaded and executed by the reader.
- As well as introducing Scala, object-oriented and functional programming the book also covers web frameworks for Scala such as Play, Scala Swing, database access, build systems for Scala and the Akka concurrency framework
Scala is a new programming language developed by Martin Odersky 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 form, etc.) and with basic procedural language concepts (such as variables and allocation of values to variables) the early chapters of the book do not assume any familiarity with object orientation nor functional programming. These chapters also step through other concepts with which the reader may not be familiar (such as list processing). From this background, John Hunt provides a practical introduction to object and functional technology using Scala, one of the newest and most interesting programming languages available.
A variety of 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, and to object orientation and functional programming, invaluable.
About the Author
John Hunt is a technology trainer, consultant, mentor and author who has 30 years experience within the computing industry. He has worked extensively in Object Oriented technologies over the last 20 years, although his career began with writing LISP on a Symbolics Lisp Machine. He first encountered Scala in 2010 through an organization with which he was working. Since then he has been involved in several Scala projects and has worked with a number of teams on developing their Scala skills.
In this Book
-
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
-
Building a Class
-
Packages & Encapsulation
-
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
-
Scala and JDBC Database Access
-
Scala Style Database Access
-
Scala and MySQL Database Example
-
Testing
-
Scala Testing
-
Introduction to Akka Actors
-
Further Akka Actors
-
Play Framework
-
RESTful Services
-
GUIs in Scala Swing
-
User Input in Scala Swing
-
Scala Build Tools
-
Scala & Java Interoperability