Home Page Icon
Home Page
Table of Contents for
I. Core Scala
Close
I. Core Scala
by Jason Swartz
Learning Scala
Dedication
Preface
Who This Book Is For
Why Write “Learning Scala”?
Why Learn Scala (or, Why Should You Read “Learning Scala”)?
Reason 1—Your Code Will Be Better
Reason 2—You’ll Be a Better Engineer
Reason 3—You’ll Be a Happier Engineer
Why Learning Scala May Not Be for You
About the Syntax Notation in This Book
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
I. Core Scala
1. Getting Started with the Scalable Language
Installing Scala
Using the Scala REPL
Summary
Exercises
2. Working with Data: Literals, Values, Variables, and Types
Values
Variables
Naming
Types
Numeric Data Types
Strings
String interpolation
Regular expressions
An Overview of Scala Types
Type operations
Tuples
Summary
Exercises
3. Expressions and Conditionals
Expressions
Defining Values and Variables with Expressions
Expression Blocks
Statements
If..Else Expression Blocks
If Expressions
If-Else Expressions
Match Expressions
Matching with Wildcard Patterns
Matching with Pattern Guards
Matching Types with Pattern Variables
Loops
Iterator Guards
Nested Iterators
Value Binding
While and Do/While Loops
Summary
Exercises
4. Functions
Procedures
Functions with Empty Parentheses
Function Invocation with Expression Blocks
Recursive Functions
Nested Functions
Calling Functions with Named Parameters
Parameters with Default Values
Vararg Parameters
Parameter Groups
Type Parameters
Methods and Operators
Writing Readable Functions
Summary
Exercises
5. First-Class Functions
Function Types and Values
Higher-Order Functions
Function Literals
Placeholder Syntax
Partially Applied Functions and Currying
By-Name Parameters
Partial Functions
Invoking Higher-Order Functions with Function Literal Blocks
Summary
Exercises
6. Common Collections
Lists, Sets, and Maps
What’s in a List?
The Cons Operator
List Arithmetic
Mapping Lists
Reducing Lists
Converting Collections
Java and Scala Collection Compatibility
Pattern Matching with Collections
Summary
Exercises
7. More Collections
Mutable Collections
Creating New Mutable Collections
Creating Mutable Collections from Immutable Ones
Using Collection Builders
Arrays
Seq and Sequences
Streams
Monadic Collections
Option Collections
Extracting values from Options
Try Collections
Future Collections
Handling futures asynchronously
Handling futures synchronously
Summary
Exercises
II. Object-Oriented Scala
8. Classes
Defining Classes
More Class Types
Abstract Classes
Anonymous Classes
More Field and Method Types
Overloaded Methods
Apply Methods
Lazy Values
Packaging
Accessing Packaged Classes
Packaging Syntax
Privacy Controls
Privacy Access Modifiers
Final and Sealed Classes
Summary
Exercises
9. Objects, Case Classes, and Traits
Objects
Apply Methods and Companion Objects
Command-Line Applications with Objects
Case Classes
Traits
Self Types
Instantiation with Traits
Importing Instance Members
Summary
Break—Configuring Your First Scala Project
Exercises
10. Advanced Typing
Tuple and Function Value Classes
Implicit Parameters
Implicit Classes
Types
Type Aliases
Abstract Types
Bounded Types
Type Variance
Package Objects
Summary
Questions
A. Reserved Words
Index
About the Author
Colophon
Copyright
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Preface
Next
Next Chapter
1. Getting Started with the Scalable Language
Part I. Core Scala
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset