Clojure Reactive Programming

Design and implement highly reusable reactive applications by integrating different frameworks with Clojure

Clojure Reactive Programming

This ebook is included in a Mapt subscription
Leonardo Borges

1 customer reviews
Design and implement highly reusable reactive applications by integrating different frameworks with Clojure
$10.00
$44.99
RRP $35.99
RRP $44.99
eBook
Print + eBook
Access every Packt eBook & Video for just $100
 
  • 4,000+ eBooks & Videos
  • 40+ New titles a month
  • 1 Free eBook/Video to keep every month
Find Out More
 
Preview in Mapt

Book Details

ISBN 139781783986668
Paperback232 pages

Book Description

Reactive Programming (RP) is central to many concurrent systems. It endeavors to make the process of developing highly-concurrent, event-driven, and asynchronous applications simpler and less error-prone. RP comes in many flavors and we will look at some of them in this book.

Clojure Reactive Programming is a practical guide aimed at exploring RP. It starts by describing Functional Reactive Programming (FRP) and its formulations, as well as how it inspired Compositional Event Systems (CES).

It also presents several examples of Reactive applications implemented in different frameworks, allowing you to develop an understanding of the subject as well as learn how to develop your ability to work with time-varying values.

By the end of the book, you will be equipped to solve real-world problems as well as understand the trade-offs between the approaches shown in the book.

Table of Contents

Chapter 1: What is Reactive Programming?
A taste of Reactive Programming
A bit of history
Signals and events
Implementation challenges
Applications of FRP
Summary
Chapter 2: A Look at Reactive Extensions
The Observer pattern revisited
Creating Observables
Manipulating Observables
Flatmap and friends
Error handling
Backpressure
Summary
Chapter 3: Asynchronous Programming and Networking
Building a stock market monitoring application
Rolling averages
Identifying problems with our current approach
Removing incidental complexity with RxClojure
Summary
Chapter 4: Introduction to core.async
Asynchronous programming and concurrency
core.async
Rewriting the stock market application with core.async
Error handling
Backpressure
Transducers
Summary
Chapter 5: Creating Your Own CES Framework with core.async
A minimal CES framework
Exercises
A respondent application
CES versus core.async
Summary
Chapter 6: Building a Simple ClojureScript Game with Reagi
Setting up the project
Reagi and other CES frameworks
Summary
Chapter 7: The UI as a Function
The problem with complex web UIs
Enter React.js
ClojureScript and Om
Building a simple Contacts application with Om
Intercomponent communication
Exercises
Summary
Chapter 8: Futures
Clojure futures
Fetching data in parallel
Imminent – a composable futures library for Clojure
The movies example revisited
Futures and blocking IO
Summary
Chapter 9: A Reactive API to Amazon Web Services
The problem
Infrastructure automation
AWS resources dashboard
CloudFormation
EC2
RDS
Designing the solution
Exercises
Summary

What You Will Learn

  • Understand the key abstractions of Functional Reactive Programming (FRP) and Compositional Event Systems (CES)
  • Discover how to think in terms of time-varying values and event streams
  • Create, compose, and transform Observable sequences with Reactive Extensions
  • Create a CES framework from scratch using core.async as its foundation
  • Build a simple ClojureScript game using Reagi
  • Integrate Om and RxJS in a web application
  • Implement a reactive API to Amazon Web Services
  • Discover approaches to backpressure and error handling
  • Get to grips with futures and learn where they fit in

Authors

Table of Contents

Chapter 1: What is Reactive Programming?
A taste of Reactive Programming
A bit of history
Signals and events
Implementation challenges
Applications of FRP
Summary
Chapter 2: A Look at Reactive Extensions
The Observer pattern revisited
Creating Observables
Manipulating Observables
Flatmap and friends
Error handling
Backpressure
Summary
Chapter 3: Asynchronous Programming and Networking
Building a stock market monitoring application
Rolling averages
Identifying problems with our current approach
Removing incidental complexity with RxClojure
Summary
Chapter 4: Introduction to core.async
Asynchronous programming and concurrency
core.async
Rewriting the stock market application with core.async
Error handling
Backpressure
Transducers
Summary
Chapter 5: Creating Your Own CES Framework with core.async
A minimal CES framework
Exercises
A respondent application
CES versus core.async
Summary
Chapter 6: Building a Simple ClojureScript Game with Reagi
Setting up the project
Reagi and other CES frameworks
Summary
Chapter 7: The UI as a Function
The problem with complex web UIs
Enter React.js
ClojureScript and Om
Building a simple Contacts application with Om
Intercomponent communication
Exercises
Summary
Chapter 8: Futures
Clojure futures
Fetching data in parallel
Imminent – a composable futures library for Clojure
The movies example revisited
Futures and blocking IO
Summary
Chapter 9: A Reactive API to Amazon Web Services
The problem
Infrastructure automation
AWS resources dashboard
CloudFormation
EC2
RDS
Designing the solution
Exercises
Summary

Book Details

ISBN 139781783986668
Paperback232 pages
Read More
From 1 reviews

Read More Reviews

Recommended for You