LitMy.ru - литература в один клик

Functional Programming in Scala, Second Edition (MEAP v8)

  • Добавил: literator
  • Дата: 8-01-2023, 07:15
  • Комментариев: 0
Functional Programming in Scala, Second Edition (MEAP v8)Название: Functional Programming in Scala, Second Edition (MEAP v8)
Автор: Michael Pilquist, Runar Bjarnason, Paul Chiusano
Издательство: Manning Publications
Год: 2022
Страниц: 545
Язык: английский
Формат: pdf, epub, mobi
Размер: 10.09 MB

Discover the power that functional programming brings to your Scala code. This international bestseller has been revised with new exercises, annotations, and full coverage of Scala 3.

In Functional Programming in Scala, Second Edition you will learn how to:

Recognize and write purely functional code
Work with errors without using exceptions
Work with state and concurrency
Interact with functional structures that define common behaviors
Write code that performs I/O without sacrificing functional programming

The first edition of Functional Programming in Scala has helped over 30,000 developers discover the power of functional programming. This second edition is fully updated to Scala 3 and the latest standards of FP. Inside, you’ll find a serious tutorial for programmers looking to apply functional programming to improve their everyday coding practices. You’ll progress from the basics to advanced topics in a logical, concise, and clear progression. Throughout, concrete examples and exercises open up the world of functional programming.

about the technology
Functional programming (FP) is a style of software development emphasizing functions that don't depend on program state. Functional code is easier to test and reuse, simpler to parallelize, and less prone to bugs than other code. Scala is a popular JVM language that offers strong support for FP. Its familiar syntax and transparent interoperability with Java make Scala a great place to start learning FP.

We’ll provide a more precise definition of side effects later in this chapter, but consider what programming would be like without the ability to do these things, or with significant restrictions on when and how these actions can occur. It may be difficult to imagine. How is it even possible to write useful programs at all? If we can’t reassign variables, how do we write simple programs like loops? What about working with data that changes, or handling errors without throwing exceptions? How can we write programs that must perform I/O, like drawing to the screen or reading from a file?

The answer is that functional programming is a restriction on how we write programs, but not on what programs we can express. Over the course of this book, we’ll learn how to express all of our programs without side effects, and that includes programs that perform I/O, handle errors, and modify data. We’ll learn how following the discipline of FP is tremendously beneficial because of the increase in modularity that we gain from programming with pure functions. Because of their modularity and lack of side effects, pure functions are easier to test, reuse, parallelize, generalize, and reason about. Furthermore, pure functions are much less prone to bugs.

about the book
Functional Programming in Scala, Second Edition teaches you functional programming from first principles using the powerful Scala language. You’ll develop the unique skills you need to start thinking functionally through hands-on exercises and coding challenges. New to the revised second edition, each exercise comes with extensive annotations to help you understand functional programming in-depth. You’ll even learn how to build your own Scala functional library that’s perfectly adapted to your needs. You’ll soon be writing Scala code that’s easier to read, easier to reuse, better for concurrency, and less prone to bugs and errors.

Скачать Functional Programming in Scala, Second Edition (MEAP V08)












[related-news] [/related-news]
Внимание
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.