Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Functional Programming Patterns in Scala and Clojure: Write Lean Programs for the JVM

Buy

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.

(HTML tags aren't allowed.)

Programming Erlang: Software for a Concurrent World (Pragmatic Programmers)
Programming Erlang: Software for a Concurrent World (Pragmatic Programmers)

A multi-user game, web site, cloud application, or networked database can have thousands of users all interacting at the same time. You need a powerful, industrial-strength tool to handle the really hard problems inherent in parallel, concurrent environments. You need Erlang. In this second edition of the bestselling Programming...

Automate the Boring Stuff with Python: Practical Programming for Total Beginners
Automate the Boring Stuff with Python: Practical Programming for Total Beginners

If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?

In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what
...

Mastering Python High Performance
Mastering Python High Performance

Measure, optimize, and improve the performance of your Python code with this easy-to-follow guide

About This Book

  • Master the do's and don'ts of Python performance programming
  • Learn how to use exiting new tools that will help you improve your scripts
  • A step-by-step,...

Python Unlocked
Python Unlocked

Key Features

  • Write smarter, bug-free, high performance code with minimal effort
  • Uncover the best tools and options available to Python developers today
  • Deploy decorators, design patters, and various optimization techniques to use Python 3.5 effectively

Book...

Web Scraping with Python (Community Experience Distilled)
Web Scraping with Python (Community Experience Distilled)

Successfully scrape data from any website with the power of Python

About This Book

  • A hands-on guide to web scraping with real-life problems and solutions
  • Techniques to download and extract data from complex websites
  • Create a number of different web scrapers to extract...
Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More!
Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More!

Doing Math with Python shows you how to use Python to delve into high school–level math topics like statistics, geometry, probability, and calculus. You’ll start with simple projects, like a factoring program and a quadratic-equation solver, and then create more complex projects once you’ve gotten the hang of...

©2018 LearnIT (support@pdfchm.net) - Privacy Policy