Functional Programming Patterns in Scala and Clojure - Michael Bevilacqua-Linn

Functional Programming Patterns in Scala and Clojure

Write Lean Programs for the JVM
Buch | Softcover
250 Seiten
2013
The Pragmatic Programmers (Verlag)
978-1-937785-47-5 (ISBN)
32,50 inkl. MwSt
Solve real-life programming problems with a fraction of the code that pure object-oriented programming requires. Use Scala and Clojure to solve in-depth problems with two sets of patterns: object-oriented patterns that become more concise with functional programming, and natively functional patterns. Your code will be more declarative, with fewer bugs and lower maintenance costs.

Functional languages have their own patterns that enable you to solve problems with less code than object-oriented programming alone. This book introduces you, the experienced Java programmer, to Scala and Clojure: practical, production-quality languages that run on the JVM and interoperate with existing Java. By using both the statically typed, type-inferred Scala and the dynamically typed, modern Lisp Clojure, you'll gain a broad understanding of functional programming.

For each pattern, you'll first see the traditional object-oriented solution, and then dig into the functional replacements in both Scala and Clojure. These patterns are common in the functional world and deserve to become part of your problem-solving toolkit. On the object-oriented side, you'll see many common patterns, such as Command, Strategy, and Null Object. On the functional side, you'll learn core functional patterns such as Memoization, Lazy Sequence, and Tail Recursion.

Each pattern helps you solve a common programming problem. Working through them gives you a set of patterns you can use to solve problems you come across while writing programs. Finally, you'll learn how to work your existing Java code into new Scala or Clojure projects. You can start off small, adding functional code little by little, so you can complement your existing knowledge with Scala and Clojure as these languages gain popularity on the JVM.

What You Need
Clojure 1.5 and Scala 2.10. Optionally, Eclipse with plugins.

Michael Bevilacqua-Linn has been programming computers ever since he dragged an Apple IIGS into his fifth grade class to explain loops and variables to pre-teenagers. He works for Comcast, where he builds distributed systems that power infrastructure for their next generation services. In his spare time he likes rock climbing and good beer, though not at the same time.

Erscheint lt. Verlag 26.11.2013
Zusatzinfo black & white illustrations
Verlagsort Raleigh
Sprache englisch
Maße 191 x 235 mm
Gewicht 445 g
Einbandart kartoniert
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Informatik Programmiersprachen / -werkzeuge Scala
Mathematik / Informatik Informatik Software Entwicklung
Informatik Theorie / Studium Algorithmen
ISBN-10 1-937785-47-5 / 1937785475
ISBN-13 978-1-937785-47-5 / 9781937785475
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
mit über 150 Workouts in Java und Python

von Luigi Lo Iacono; Stephan Wiefling; Michael Schneider

Buch (2023)
Carl Hanser (Verlag)
29,99