2 options
Pragmatic Scala : create expressive, concise, and scalable applications / Venkat Subramaniam ; edited by Jacquelyn Carter.
- Format:
- Book
- Author/Creator:
- Subramaniam, Venkat, author.
- Series:
- Pragmatic programmers.
- The Pragmatic Programmers
- Language:
- English
- Subjects (All):
- Scala (Computer program language).
- Java (Computer program language).
- Multiparadigm programming (Computer science).
- Physical Description:
- 1 online resource (272 pages) : illustrations (some color).
- Edition:
- Version: P1.0 (September 2015)
- Place of Publication:
- Dallas, Texas ; Raleigh, North Carolina : The Pragmatic Bookshelf, 2015.
- System Details:
- text file
- Summary:
- Our industry is moving toward functional programming, but your object-oriented experience is still valuable. Scala combines the power of OO and functional programming, and Pragmatic Scala shows you how to work effectively with both. Updated to Scala 2.11, with in-depth coverage of new features such as Akka actors, parallel collections, and tail call optimization, this book will show you how to create stellar applications. The first edition of this book was released as Programming Scala .
- Contents:
- Cover
- Table of Contents
- Acknowledgments
- Introduction
- Programming Styles in Scala
- Scala and Other Languages
- Who Is This Book For?
- What's in This Book?
- Scala Version Used in This Book
- Online Resources
- Part I-Getting Your Feet Wet
- 1. Exploring Scala
- Scala Features
- More with Less
- Functional Programming
- 2. Taking Scala for a Ride
- Using the REPL
- Scala on the Command Line
- Running Scala Code as a Stand-alone Script
- Compiling Scala
- 3. From Java to Scala
- Scala as Concise Java
- Scala Classes for Java Primitives
- Tuples and Multiple Assignments
- Flexible Parameters and Arguments
- Implicit Parameters
- Strings and Multiline Raw Strings
- String Interpolation
- Sensible Defaults
- Operator Overloading
- Scala Surprises for the Java Eyes
- Default Access Modifier
- 4. Working with Objects
- Creating and Using Classes
- Following the JavaBean Convention
- Type Aliasing
- Extending a Class
- Parameterized Types
- Singletons and Companions
- Creating Enumerations
- Package Objects
- 5. Making Use of Types
- Type Inference
- Fundamental Types
- Return Type Inference
- Variance of Parameterized Type
- Implicit Type Conversions
- Value Classes
- Using Implicit Conversions
- Part II-Diving Into Scala
- 6. Function Values and Closures
- Limitations of Normal Functions
- Extensibility with Higher-Order Functions
- Function Values with Multiple Parameters
- Currying
- Positional Notation for Parameters
- Parameter Routing
- Reusing Function Values
- Partially Applied Functions
- Closures
- Execute Around Method Pattern
- 7. Traits
- Understanding Traits
- Selective Mixins
- Decorating with Traits
- Method Late Binding in Traits
- 8. Collections
- Common Scala Collections
- Using a Set
- Associative Maps
- Immutable Lists
- Method Name Convention.
- The for Expression
- 9. Pattern Matching and Regular Expressions
- Comprehensive Matching
- Pattern Variables and Constants in case Expressions
- Matching Using case Classes
- Extractors and Regular Expressions
- The Omnipresent Underscore Character
- 10. Handling Exceptions
- Exceptions in Scala
- Mind the Catch Order
- 11. Programming Recursions
- A Simple Recursion
- Tail Call Optimization (TCO)
- Trampoline Calls
- Part III-Concurrency in Scala
- 12. Lazy Evaluations and Parallel Collections
- Let's Get Lazy
- Making Strict Collections Lazy
- The Ultimately Lazy Streams
- Parallel Collections
- 13. Programming with Actors
- A Sequential Time-Consuming Problem
- The Treacherous Paths to Concurrency
- Creating Actors
- Actors and Threads
- Isolated Mutability
- Concurrency with Actors
- Usage Recommendations
- Part IV-Applying Scala
- 14. Intermixing with Java
- Using Scala Classes from Scala
- Using Java Classes from Scala
- Using Scala Methods from Java
- Using Traits from Java
- Using Singletons and Companion Objects from Java
- Extending Classes
- 15. Creating an Application with Scala
- Getting Users' Input
- Reading and Writing Files
- XML as a First-Class Citizen
- Reading and Writing XML
- Getting Stock Prices from the Web
- Making the Net Asset Application Concurrent
- 16. Unit Testing
- Using JUnit
- Using ScalaTest
- Using Mockito
- A1. Installing Scala
- Downloading
- Installing
- A2. Web Resources
- Bibliography
- Index
- - SYMBOLS -
- - A -
- - B -
- - C -
- - D -
- - E -
- - F -
- - G -
- - H -
- - I -
- - J -
- - K -
- - L -
- - M -
- - N -
- - O -
- - P -
- - Q -
- - R -
- - S -
- - T -
- - U -
- - V -
- - W -
- - X -
- - Y -
- - Z -.
- Notes:
- "Scala 2.11"--Cover.
- Includes bibliographical references and index.
- Description based on print version record.
- Description based on publisher supplied metadata and other sources.
- ISBN:
- 9781680501551
- 1680501550
- 9781680504217
- 1680504215
- 9781680504200
- 1680504207
- 9781680500547
- 1680500546
- OCLC:
- 929474072
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.