"Reactive": Difference between revisions

From Helpful
Jump to navigation Jump to search
m (Helpful moved page Reactive to "Reactive")
Line 3: Line 3:




'''Reactive websites''', responsive design, adaptive websites, and mobile friendly websites, are all different takes on very similar themes -- that theme ''largely'' (but not only) being about layouting for different sizes and shapes of screen, and dealing different kinds of input (mouse versus touch).
'''Reactive websites''', '''responsive design''', '''adaptive websites''', and '''mobile friendly websites''', are all different takes on very similar themes -- ''largely'' (but not only) being about layouting for different shapes and sizes of screen, and dealing with different kinds of input (e.g. mouse versus touch).




Line 11: Line 11:
: 'reactive' (and 'adaptive') often means you get sent a somewhat different site between desktop and mobile.
: 'reactive' (and 'adaptive') often means you get sent a somewhat different site between desktop and mobile.


 
...yet there are no hard boundaries here


===Reactive programming (state management)===
===Reactive programming (state management)===

Revision as of 13:43, 12 October 2023

Reactive websites (layouting)

Reactive websites, responsive design, adaptive websites, and mobile friendly websites, are all different takes on very similar themes -- largely (but not only) being about layouting for different shapes and sizes of screen, and dealing with different kinds of input (e.g. mouse versus touch).


In this context,

'responsive' often means that the same thing will naturally layout in a different sensible way on a different-shaped or different-sized screen (and you'll get people resizing the browser and saying "see?")
'reactive' (and 'adaptive') often means you get sent a somewhat different site between desktop and mobile.

...yet there are no hard boundaries here

Reactive programming (state management)

Reactive programming is programming style where state changes are automatically propagated to where they need to go.

This tends to mean

  • a relatively declarative style.
  • thinking in terms of events (rather than things as ordered by code)
and possibly grouping those events in event streams
a fairly asynchronous system of execution (in terms of event ordering)

It's also a lot closer to functional programming than people seem to realize.


This concept is used anywhere from

to the hidden model of GUI updates
see also e.g. Vue, Svelte, where what looks like regular JS
program language design
that is, languages with added features, like coroutines;
a fully reactive languages have proven to be useful for specific purposes but not as a generic language


Reactive JS frameworks

Reactive provisioning