Reactive Programming with JavaScript

Learn the hot new front-end web framework from Facebook: ReactJS, an easy way of developing the V in MVC and a better approach to software engineering in functional JavaScript

Reactive Programming with JavaScript

Jonathan Hayward

2 customer reviews
Learn the hot new front-end web framework from Facebook: ReactJS, an easy way of developing the V in MVC and a better approach to software engineering in functional JavaScript
Mapt Subscription
FREE
€29.98/m after trial
eBook
€30.24
RRP €43.18
Save 29%
Print + eBook
€44.99
RRP €44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
€0.00
€30.24
€44.99
€29.98p/m after trial
RRP €43.18
RRP €44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781783558551
Paperback264 pages

Book Description

Reactive programming is carried out using the building blocks of functional programming. JavaScript libraries such as ReactJS are used for front-end web development that is both competent and powerful. ReactJS is intensively being used to develop webapps for Facebook.

This title is among the first of those addressing how everyday programmers can take advantage of reactive programming without having an extremely heavy mathematical background. It starts with the basics a front-end developer can easily connect with, while also covering the basics of functional programming. Then it goes on to explain non-functional reactive programming with the help of a live example. After that it gives a theoretical overview of reactive programming supported by functional programming. Tools to make functional programming easier like Bacon.js, a library like jQuery, are also covered. Finally, it finishes with building one small and one larger front-end project.

Table of Contents

Chapter 1: Introduction and Installation
A 10,000-foot overview
Installing the tools required
Summary
Chapter 2: Core JavaScript
The strict mode
Variables and assignment
A note on values and NaN
Summary
Chapter 3: Reactive Programming – The Basic Theory
Declarative programming
The war on Heisenbugs
The Flux Architecture
From the pit of despair to the pit of success
Complete UI teardown and rebuild
JavaScript as a Domain-specific Language
The Big-Coffee Notation
Summary
Chapter 4: Demonstrating Nonfunctional Reactive Programming – A Live Example
The history of a game with multiple ports
The HTML for the web page
The JavaScript that animates that page
Summary
Chapter 5: Learning Functional Programming – The Basics
Custom sort functions – the first example of functional JavaScript and first-class functions
An overview of information hiding in JavaScript
Summary
Chapter 6: Functional Reactive Programming – The Basics
A trip down computer folklore's memory lane
Distinguishing the features of functional reactive programming
If you learn just one thing...
Learn what you can!
JavaScript as the new bare metal
Summary
Chapter 7: Not Reinventing the Wheel – Tools for Functional Reactive Programming
ClojureScript
Om
Bacon.js
Brython – a Python browser implementation
Immutable.js – permanent protection from change
Jest – BDD unit testing from Facebook
Implementing the Flux Architecture using Fluxxor
Summary
Chapter 8: Demonstrating Functional Reactive Programming in JavaScript – A Live Example, Part I
What we will be attempting in this chapter
This project's first complete component
The render() method
Triggering the actual display for what we have created
Summary
Chapter 9: Demonstrating Functional Reactive Programming in JavaScript with a Live Example Part II – A To-do List
Adding a to-do list to our application
Summary
Chapter 10: Demonstrating Functional Reactive Programming in JavaScript: A Live Example Part III – A Calendar
Play it again Sam – an interesting challenge
Classical Hijaxing works well
Built with usability in mind, but there's still room to grow
Plain old JavaScript objects are all you need
Progressive disclosure that starts simply
A render() method can easily delegate
Boring code is better than interesting code!
A simple UI for simply non-recurring entries...
The user can still opt-in for more
Avoiding being clever
Anonymous helper functions may lack pixie dust
How far in the future should we show?
Different stripes for different entry types
Now we're ready to display!
Let's be nice and sort each day in order
Let them use Markdown!
One thing at a time!
The holidays that inspired this calendar
Summary
Chapter 11: Demonstrating Functional Reactive Programming in JavaScript with a Live Example Part IV – Adding a Scratchpad and Putting It All Together
Adding a WYSIWYG scratchpad, courtesy CKeditor
CKeditor – small free offerings, and small is beautiful
Integrating all four subcomponents into one page
Persistence
Summary
Chapter 12: How It All Fits Together
A review of the terrain covered
Could the Mythical Man-Month have been avoided?
ReactJS is just a view, but what a view!
Programming is fun again!
Summary

What You Will Learn

  • Learn FRP with JavaScript for non-mathematicians
  • Experience Facebook’s primary front-end framework, ReactJS
  • Using the tools Facebook uses to build a better site in less time
  • Create and implement Node.js
  • Delve into the development of webapps using ReactJS
  • Implementation of FRP ReactJS with live examples

Authors

Table of Contents

Chapter 1: Introduction and Installation
A 10,000-foot overview
Installing the tools required
Summary
Chapter 2: Core JavaScript
The strict mode
Variables and assignment
A note on values and NaN
Summary
Chapter 3: Reactive Programming – The Basic Theory
Declarative programming
The war on Heisenbugs
The Flux Architecture
From the pit of despair to the pit of success
Complete UI teardown and rebuild
JavaScript as a Domain-specific Language
The Big-Coffee Notation
Summary
Chapter 4: Demonstrating Nonfunctional Reactive Programming – A Live Example
The history of a game with multiple ports
The HTML for the web page
The JavaScript that animates that page
Summary
Chapter 5: Learning Functional Programming – The Basics
Custom sort functions – the first example of functional JavaScript and first-class functions
An overview of information hiding in JavaScript
Summary
Chapter 6: Functional Reactive Programming – The Basics
A trip down computer folklore's memory lane
Distinguishing the features of functional reactive programming
If you learn just one thing...
Learn what you can!
JavaScript as the new bare metal
Summary
Chapter 7: Not Reinventing the Wheel – Tools for Functional Reactive Programming
ClojureScript
Om
Bacon.js
Brython – a Python browser implementation
Immutable.js – permanent protection from change
Jest – BDD unit testing from Facebook
Implementing the Flux Architecture using Fluxxor
Summary
Chapter 8: Demonstrating Functional Reactive Programming in JavaScript – A Live Example, Part I
What we will be attempting in this chapter
This project's first complete component
The render() method
Triggering the actual display for what we have created
Summary
Chapter 9: Demonstrating Functional Reactive Programming in JavaScript with a Live Example Part II – A To-do List
Adding a to-do list to our application
Summary
Chapter 10: Demonstrating Functional Reactive Programming in JavaScript: A Live Example Part III – A Calendar
Play it again Sam – an interesting challenge
Classical Hijaxing works well
Built with usability in mind, but there's still room to grow
Plain old JavaScript objects are all you need
Progressive disclosure that starts simply
A render() method can easily delegate
Boring code is better than interesting code!
A simple UI for simply non-recurring entries...
The user can still opt-in for more
Avoiding being clever
Anonymous helper functions may lack pixie dust
How far in the future should we show?
Different stripes for different entry types
Now we're ready to display!
Let's be nice and sort each day in order
Let them use Markdown!
One thing at a time!
The holidays that inspired this calendar
Summary
Chapter 11: Demonstrating Functional Reactive Programming in JavaScript with a Live Example Part IV – Adding a Scratchpad and Putting It All Together
Adding a WYSIWYG scratchpad, courtesy CKeditor
CKeditor – small free offerings, and small is beautiful
Integrating all four subcomponents into one page
Persistence
Summary
Chapter 12: How It All Fits Together
A review of the terrain covered
Could the Mythical Man-Month have been avoided?
ReactJS is just a view, but what a view!
Programming is fun again!
Summary

Book Details

ISBN 139781783558551
Paperback264 pages
Read More
From 2 reviews

Read More Reviews

Recommended for You

Mastering Web Application Development with AngularJS Book Cover
Mastering Web Application Development with AngularJS
€ 25.18
€ 5.04
Responsive Web Design with HTML5 and CSS3 Book Cover
Responsive Web Design with HTML5 and CSS3
€ 22.78
€ 4.56
AngularJS Web Application Development Blueprints Book Cover
AngularJS Web Application Development Blueprints
€ 28.78
€ 20.16
Object-Oriented JavaScript - Second Edition Book Cover
Object-Oriented JavaScript - Second Edition
€ 28.78
€ 20.16
Mastering JavaScript Design Patterns Book Cover
Mastering JavaScript Design Patterns
€ 26.38
€ 18.48
MEAN Web Development Book Cover
MEAN Web Development
€ 26.38
€ 2.64