Reactive apps

Reactive applications are about responding rapidly to events or streams of changes.

The most obvious examples of reactive apps include:

  • Web page: clicking a button on a web page and seeing the results instantly
  • Mobile App: pressing an area on your mobile app and instantly sseing the results
  • Spreadsheet App: updating a cell in a spreadsheet and seeing the data change instantly
  • A developers IDE: running a compiler or unit tests on your code and seeing the failing lines of code highlighted in your code editor

The React Manifesto

The interest in React has grown considerably and now they have created the React Manifesto. The most important paragraph for me is:

Systems built as Reactive Systems are more flexible, loosely-coupled and scalable. This makes them easier to develop and amenable to change. They are significantly more tolerant of failure and when failure does occur they meet it with elegance rather than disaster. Reactive Systems are highly responsive, giving users effective interactive feedback.

Reactive Traits

Read more and potentially sign the React Manifesto

Virtual Dom

Reading from a DOM is inefficient

Continuous random updates to the DOM is inefficient

Batch updating the DOM

Clojure Immuatable Data structures

Immutable data structures are really fast when it comes to comparison

Replay from root

Playback all the changes that have been made to your app

? Does this work in the same way as CQRS - does it make sense to make a comparison ?

results matching ""

    No results matching ""