Learning Concurrent Programming in Scala - Second Edition

Nonfiction, Computers, Internet, Web Development, Java, Programming, Programming Languages
Cover of the book Learning Concurrent Programming in Scala - Second Edition by Aleksandar Prokopec, Packt Publishing
View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart
Author: Aleksandar Prokopec ISBN: 9781786462145
Publisher: Packt Publishing Publication: February 23, 2017
Imprint: Packt Publishing Language: English
Author: Aleksandar Prokopec
ISBN: 9781786462145
Publisher: Packt Publishing
Publication: February 23, 2017
Imprint: Packt Publishing
Language: English

Learn the art of building intricate, modern, scalable, and concurrent applications using Scala

About This Book

  • Make the most of Scala by understanding its philosophy and harnessing the power of multicores
  • Get acquainted with cutting-edge technologies in the field of concurrency, through practical, real-world applications
  • Get this step-by-step guide packed with pragmatic examples

Who This Book Is For

If you are a Scala programmer with no prior knowledge about concurrent programming, or seeking to broaden your existing knowledge about concurrency, this book is for you. Basic knowledge of the Scala programming language will be helpful. Also if you have a solid knowledge in another programming language, such as Java, you should find this book easily accessible.

What You Will Learn

  • Get to grips with the fundamentals of concurrent programming on modern multiprocessor systems
  • Build high-performance concurrent systems from simple, low-level concurrency primitives
  • Express asynchrony in concurrent computations with futures and promises
  • Seamlessly accelerate sequential programs by using data-parallel collections
  • Design safe, scalable, and easy-to-comprehend in-memory transactional data models
  • Transparently create distributed applications that scale across multiple machines
  • Integrate different concurrency frameworks together in large applications
  • Develop and implement scalable and easy-to-understand concurrent applications in Scala 2.12

In Detail

Scala is a modern, multiparadigm programming language designed to express common programming patterns in a concise, elegant, and type-safe way. Scala smoothly integrates the features of object-oriented and functional languages.

In this second edition, you will find updated coverage of the Scala 2.12 platform. The Scala 2.12 series targets Java 8 and requires it for execution. The book starts by introducing you to the foundations of concurrent programming on the JVM, outlining the basics of the Java Memory Model, and then shows some of the classic building blocks of concurrency, such as the atomic variables, thread pools, and concurrent data structures, along with the caveats of traditional concurrency.

The book then walks you through different high-level concurrency abstractions, each tailored toward a specific class of programming tasks, while touching on the latest advancements of async programming capabilities of Scala. It also covers some useful patterns and idioms to use with the techniques described. Finally, the book presents an overview of when to use which concurrency library and demonstrates how they all work together, and then presents new exciting approaches to building concurrent and distributed systems.

Style and approach

The book provides a step-by-step introduction to concurrent programming. It focuses on easy-to-understand examples that are pragmatic and applicable to real-world applications. Different topics are approached in a bottom-up fashion, gradually going from the simplest foundations to the most advanced features.

View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart

Learn the art of building intricate, modern, scalable, and concurrent applications using Scala

About This Book

Who This Book Is For

If you are a Scala programmer with no prior knowledge about concurrent programming, or seeking to broaden your existing knowledge about concurrency, this book is for you. Basic knowledge of the Scala programming language will be helpful. Also if you have a solid knowledge in another programming language, such as Java, you should find this book easily accessible.

What You Will Learn

In Detail

Scala is a modern, multiparadigm programming language designed to express common programming patterns in a concise, elegant, and type-safe way. Scala smoothly integrates the features of object-oriented and functional languages.

In this second edition, you will find updated coverage of the Scala 2.12 platform. The Scala 2.12 series targets Java 8 and requires it for execution. The book starts by introducing you to the foundations of concurrent programming on the JVM, outlining the basics of the Java Memory Model, and then shows some of the classic building blocks of concurrency, such as the atomic variables, thread pools, and concurrent data structures, along with the caveats of traditional concurrency.

The book then walks you through different high-level concurrency abstractions, each tailored toward a specific class of programming tasks, while touching on the latest advancements of async programming capabilities of Scala. It also covers some useful patterns and idioms to use with the techniques described. Finally, the book presents an overview of when to use which concurrency library and demonstrates how they all work together, and then presents new exciting approaches to building concurrent and distributed systems.

Style and approach

The book provides a step-by-step introduction to concurrent programming. It focuses on easy-to-understand examples that are pragmatic and applicable to real-world applications. Different topics are approached in a bottom-up fashion, gradually going from the simplest foundations to the most advanced features.

More books from Packt Publishing

Cover of the book Mastering R for Quantitative Finance by Aleksandar Prokopec
Cover of the book Xamarin Mobile Application Development for iOS by Aleksandar Prokopec
Cover of the book Responsive Web Design Patterns by Aleksandar Prokopec
Cover of the book Instant Apache ActiveMQ Messaging Application Development How-to by Aleksandar Prokopec
Cover of the book Penetration Testing with the Bash shell by Aleksandar Prokopec
Cover of the book Applied Supervised Learning with Python by Aleksandar Prokopec
Cover of the book Learning Unity 2D Game Development by Example by Aleksandar Prokopec
Cover of the book Spring MVC Beginner’s Guide by Aleksandar Prokopec
Cover of the book Learning PostgreSQL 10 - Second Edition by Aleksandar Prokopec
Cover of the book R: Unleash Machine Learning Techniques by Aleksandar Prokopec
Cover of the book Android Application Testing Guide by Aleksandar Prokopec
Cover of the book Mastering DynamoDB by Aleksandar Prokopec
Cover of the book Architectural Patterns by Aleksandar Prokopec
Cover of the book Learning Ceph - Second Edition by Aleksandar Prokopec
Cover of the book Instant Node Package Manager by Aleksandar Prokopec
We use our own "cookies" and third party cookies to improve services and to see statistical information. By using this website, you agree to our Privacy Policy