Home Page Icon
Home Page
Table of Contents for
Contents
Close
Contents
by Benjamin Neil, Matthew de Detrich, Aliaksandr Bedrytski, Alessandro Lacava, Jane
Professional Scala
Title Page
Introduction
Who This Book Is For
What This Book Covers
How This Book Is Structured
What You Need to Use This Book
Conventions
Source Code
Errata
p2p.wrox.com
Chapter 1: Language Features
Static Types and Type Inference
Pattern Matching
Packages, Companion Objects, Package Objects, and Scoping
Summary
Chapter 2: Functional Programming
Immutability
Pure Functions
Recursion
Higher-Order Functions
Core Collection Methods
Currying and Partially Applied Functions
Null Handling (Option)
Strict versus Non-Strict Initialization
Summary
Chapter 3: Java Compatibility
Scala and Java Collections
Interfaces and Traits
Scala/Java Enumerations
Summary
Chapter 4: Simple Build Tool
Basic Usage
Advanced Usage
Release Management
Summary
Chapter 5: Maven
Getting Started with Maven and Scala
Introducing scala-maven-plugin
Adding Library Dependencies
Using the REPL
Getting Help
Running Tests
Joint Compilation with Java
Accelerating Compilation with Zinc
Summary
Chapter 6: Scala Style/Lint
Scala with Style
Scaliform
Scapegoat
WartRemover
Scoverage
Summary
Chapter 7: Testing
ScalaTest
Unit Tests
Integration Testing
Load Testing
Summary
Chapter 8: Documenting Your Code with Scaladoc
Why Document Your Code?
Scaladoc Structure
Invoking the Scaladoc Tool
Wiki Syntax
Tagging
Invoking scaladoc: Additional Options
Integrating Scaladoc Creation with Your Project
Publishing Scaladoc
Tables and CSS
Summary
Chapter 9: Type System
What Is a Type System?
Scala's Unified Type System
Polymorphism
Bounds
Other Niceties
Summary
Chapter 10: Advanced Functional Programming
Higher-Kinded Types
Functional Design Patterns
Summary
Chapter 11: Concurrency
Synchronize/Atomic Variables
Future Composition
Parallel Collections
Reactive Streams
STM
Actors (Akka)
Spark
Summary
Chapter 12: Scala.js
Scala.js and Its Design
Getting Started: Scala.js with SBT
Scala.js Peculiarities
Webjars and Dealing with the Frontend Ecosytem
Summary
End User License Agreement
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
Cover
Next
Next Chapter
Title Page
Table of Contents
Title Page
Introduction
Who This Book Is For
What This Book Covers
How This Book Is Structured
What You Need to Use This Book
Conventions
Source Code
Errata
p2p.wrox.com
Chapter 1: Language Features
Static Types and Type Inference
Pattern Matching
Packages, Companion Objects, Package Objects, and Scoping
Summary
Chapter 2: Functional Programming
Immutability
Pure Functions
Recursion
Higher-Order Functions
Core Collection Methods
Currying and Partially Applied Functions
Null Handling (Option)
Strict versus Non-Strict Initialization
Summary
Chapter 3: Java Compatibility
Scala and Java Collections
Interfaces and Traits
Scala/Java Enumerations
Summary
Chapter 4: Simple Build Tool
Basic Usage
Advanced Usage
Release Management
Summary
Chapter 5: Maven
Getting Started with Maven and Scala
Introducing scala-maven-plugin
Adding Library Dependencies
Using the REPL
Getting Help
Running Tests
Joint Compilation with Java
Accelerating Compilation with Zinc
Summary
Chapter 6: Scala Style/Lint
Scala with Style
Scaliform
Scapegoat
WartRemover
Scoverage
Summary
Chapter 7: Testing
ScalaTest
Unit Tests
Integration Testing
Load Testing
Summary
Chapter 8: Documenting Your Code with Scaladoc
Why Document Your Code?
Scaladoc Structure
Invoking the Scaladoc Tool
Wiki Syntax
Tagging
Invoking scaladoc: Additional Options
Integrating Scaladoc Creation with Your Project
Publishing Scaladoc
Tables and CSS
Summary
Chapter 9: Type System
What Is a Type System?
Scala's Unified Type System
Polymorphism
Bounds
Other Niceties
Summary
Chapter 10: Advanced Functional Programming
Higher-Kinded Types
Functional Design Patterns
Summary
Chapter 11: Concurrency
Synchronize/Atomic Variables
Future Composition
Parallel Collections
Reactive Streams
STM
Actors (Akka)
Spark
Summary
Chapter 12: Scala.js
Scala.js and Its Design
Getting Started: Scala.js with SBT
Scala.js Peculiarities
Webjars and Dealing with the Frontend Ecosytem
Summary
End User License Agreement
Pages
i
ii
iii
iv
xv
xvi
xvii
xviii
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
205
206
207
208
209
210
211
212
213
Guide
Cover
Table of Contents
Begin Reading
List of Illustrations
Chapter 2: Functional Programming
Figure 2.1
Figure 2.2
Figure 2.3
Chapter 5: Maven
Figure 5.1
Chapter 8: Documenting Your Code with Scaladoc
Figure 8.1
Figure 8.2
Figure 8.3
Figure 8.4
Figure 8.5
Figure 8.6
Figure 8.7
Figure 8.8
Figure 8.9
Figure 8.10
Figure 8.11
Figure 8.12
Figure 8.13
Figure 8.14
Figure 8.15
Figure 8.16
Figure 8.17
Figure 8.18
Figure 8.19
Figure 8.20
Figure 8.21
Figure 8.22
Figure 8.23
Figure 8.24
Figure 8.25
Figure 8.26
Figure 8.27
Figure 8.28
Figure 8.29
Chapter 9: Type System
Figure 9.1
Chapter 10: Advanced Functional Programming
Figure 10.1
Chapter 11: Concurrency
Figure 11.1
Figure 11.2
Figure 11.3
Figure 11.4
Figure 11.5
Figure 11.6
Figure 11.7
Figure 11.8
Figure 11.9
Figure 11.10
Figure 11.11
Chapter 12: Scala.js
Figure 12.1
List of Tables
Chapter 3: Java Compatibility
Table 3.1 From Scala to Java
Table 3.2 From Java to Scala
Chapter 5: Maven
Table 5.1 Plugin Goals
Chapter 8: Documenting Your Code with Scaladoc
Table 8.1 Entities by Category
Table 8.2 Wiki Syntax and Effects
Table 8.3 Wiki Syntax for Block Types
Table 8.4 Wiki Syntax for Lists
Table 8.5 Link types
Table 8.6 Tags and Their Purposes
Table 8.7 Newly Introduced Tags and Their Purpose
Table 8.8 The Group Tags
Table 8.9 Advanced Tags
Table 8.10 scaladoc Command-Line Options
Table 8.11 Supported Tags in Scaladoc
Chapter 9: Type System
Table 9.1 Variance Types
Chapter 10: Advanced Functional Programming
Table 10.1 Kinds in Type Theory
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