Programming Scala: Scalability = Functional Programming + Objects 3rd Edition, Kindle Edition
Use the Amazon App to scan ISBNs and compare prices.
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required. Learn more
Read instantly on your browser with Kindle Cloud Reader.
Using your mobile phone camera - scan the code below and download the Kindle app.
Enter your mobile phone or email address
By pressing "Send link," you agree to Amazon's Conditions of Use.
You consent to receive an automated text message from or on behalf of Amazon about the Kindle App at your mobile number above. Consent is not a condition of any purchase. Message & data rates may apply.
While Java remains popular and Kotlin has become popular, Scala hasn't been sitting still. This third edition covers the new features in Scala 3 with updates throughout the book. Programming Scala is ideal for beginning to advanced developers who want a complete understanding of Scala's design philosophy and features with a thoroughly practical focus.
- Program faster with Scala's succinct and flexible syntax
- Dive into basic and advanced functional programming techniques
- Build killer big data and distributed apps using Scala's functional combinators and tools like Spark and Akka
- Create concise solutions to challenging design problems with the sophisticated type system, mixin composition with traits, pattern matching, and more
From the Publisher
From the Preface
How to Read This Book
The first three chapters provide a fast tour of features without going into much depth. If you are experienced with Scala, skim these chapters to find new Scala 3 features that are introduced. The “3” icon in the lefthand margin makes it easy to find the content specific to Scala 3 throughout the book. If you are new to Scala, make sure you understand all the content in these chapters thoroughly.
Chapters 4–15 go back over the main features in depth. After learning this material, you’ll be quite productive working with most Scala code bases. For you experienced readers, Chapters 5 and 6 will be the most interesting because they cover the new ways of abstracting over context (i.e., implicits). Chapters 7–12 are mostly the same for Scala 2 and 3, especially the material that explores Scala as an OOP language. However, you’ll find Scala 3 changes throughout all these chapters. Also, all examples shown use the new, optional Scala 3 notation that omits most curly braces.
Chapters 16 and 17 explore the rest of Scala’s sophisticated type system. I tried to cover the most important concepts you’ll encounter in Chapter 16, with more advanced topics in Chapter 17. You’ll find plenty of new Scala 3 content in these chapters.
Finally, pick and choose sections in Chapters 18–24 as you need to understand the concepts they cover. For example, when you encounter the popular, but advanced, subject of category theory, read Chapter 18. When you need to use concurrency and distribution for scalability, read Chapter 19. If you want to balance dynamic and static typing or you need to write domain-specific languages, read Chapter 20 or 21, respectively. If you want more information about tools in the Scala ecosystem and combining Java with Scala code, Chapter 22 offers tips. In a sense, Chapter 23 is a summary chapter that brings together my thoughts on using Scala effectively for long-term, scalable application development. Lastly, Chapter 24 introduces the powerful metaprogramming features of Scala, with significant changes in Scala 3.
For reference, an appendix summarizes optional new syntax conventions compared with traditional syntax. A list of references and an index finish the book.
O'Reilly's mission is to change the world by sharing the knowledge of innovators. For over 40 years, we've inspired companies and individuals to do new things (and do them better) by providing the skills and understanding that are necessary for success.
At the heart of our business is a unique network of expert pioneers and practitioners who share their knowledge through the O’Reilly learning platform and our books—which have been heralded for decades as the definitive way to learn the technologies that are shaping the future. So individuals, teams, and organizations learn the tools, best practices, and emerging trends that will transform their industries.
Our customers are hungry to build the innovations that propel the world forward. And we help them do just that.
- "Whether you're new to entirely Scala or making the two to three transition, Dean Wampler is the ideal traveling companion. Some Scala books make you feel like you're back in a classroom. This one makes you feel like you are pair-programming with a helpful expert by your side." -- Seth Tisue, Senior Software Engineer, Scala Compiler Team, Lightbend Inc.
- "Dean leaves no question unanswered. Rather than telling you only what you need to know to produce working code, he takes an extra step and explains exactly: How is this feature implemented? Is there a more general idea behind it that can provide extra context? Reading this book will enable you to make new connections between concepts you couldn't connect before. Which is to say, you'll learn something." -- Lutz Huehnken, Chief Architect, Hamburg Süd, A Maersk Company
- "Dean has succeeded in giving a complete and comprehensive overview of the third major release of the Scala language by not only describing all the new features of the language, but also covering what's changed from Scala 2. Highly recommended for both newbies and experienced Scala 2 programmers!" -- Eric Loots, CTO, Lunatech
- "At his many Strata Data + AI talks and tutorials, Dean made the case for using Scala for data engineering, especially with tools such as Spark and Kafka. He captures his Scala expertise and practical advice here." -- Ben Lorica, Gradient Flow
- "I've had the great pleasure of working with Dean in a few different roles over the past several years. He is ever the strong advocate for pragmatic, effective approaches for data engineering-especially using Scala as the ideal programming language in that work. This book guides you through why Scala is so compelling and how to use it effectively." -- Paco Nathan, Managing Partner at Derwen, Inc.
- "An excellent update to the earlier edition that will help developers understand how to harness the power of Scala 3 in a pragmatic and practical way." -- Ramnivas Laddad, cofounder, Paya Labs, Inc.
From the Author
- ASIN : B095XLMMGC
- Publisher : O'Reilly Media; 3rd edition (May 26, 2021)
- Publication date : May 26, 2021
- Language : English
- File size : 2309 KB
- Simultaneous device usage : Unlimited
- Text-to-Speech : Enabled
- Enhanced typesetting : Enabled
- X-Ray : Not Enabled
- Word Wise : Not Enabled
- Print length : 713 pages
- Lending : Not Enabled
- Best Sellers Rank: #619,746 in Kindle Store (See Top 100 in Kindle Store)
- Customer Reviews:
About the author
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
Top reviews from other countries
- Readers may want to buy a Haskell book if interested in Category theory explanations, Or just Google "Haskell typeclassopedia" and related topics; that add a bit more to the explanation in this book.
Minor quibble, one or two sentences missed the English parser check :) and the short url (references) I find a bit useless in a physical book, I'd rather have the references listed at the end of the chapter in one place.