Skip to main content

ReactJS - Reactive Programming


What Is Reactive Programming?

Reactive programming is a commonly-implemented practice in React implementations, but what does that actually mean? Well, Wikipedia's got our backs with the most basic of definitions: "In computing, reactive programming is an asynchronous programming paradigm concerned with data streams and the propagation of change." Who did what now? Yeah, it seems complicated, but not only is it necessary but, with the veil of jargon explained, it's actually pretty basic.

Courtesy of innoq.com [10]

Reactive Programming Fundamentals

Complexities aside, you can think of reactive programming as programming with changing information. In basic Java programming, for example, int c = a + b; assigns c that sum of the two variables at the time of assignment, not a binding obligation to continuously reflect the sum of a and b as they change. With reactive programming, when a variable's value changes, values associated with said value also change. This is why they call it reactive; it reacts to changes in variable states. Now, you may try to figure out why reactive programming isn't just regular programming when you print out a variable, change it, and print it out again. Technically, while this has a similar implementation, reactive programming uses a series of event handlers and reacts to new interactions in the program and reacts in a more organized manner.

Now, if I might ask, how reactive is ReactJS? Somewhat reactive, admittedly. React is named partially for its reacting capabilities, but some joke about how it should have been called a scheduler system (not true reactive) [1]. However, one of the impressive things with React is that reactive programming concepts can still be well-imitated in the design without excessive comprimise, and many hail this inclusion as something worth celebrating in and of itself. The impact on design of the common developer using React is almost exactly the same despite a difference in underlying principle, with reactive programming as the basis for which React strives to (and in some capacity succeeds to) replicate [1].


So, why does this matter

Who cares? Well, this inclusion allows access for design implementations with underlying structures more organizable and/or in some case more efficient when compared to the alternatives. You can think of it kind of like recursion (loosely) in that its inclusion in the computing field allows for increased efficiency in design and even encourages ease of quality design in some scenarios [6, 8]. Discussed at length has been the importance to make computers more efficient, but development is another thing that is important to factor into progress. If reactive programs allow for more legible programs and encourage quality and simplicity in design, their inclusion and coming addition into the roster of development techniques can be considered beneficial for the future of development.


Bibliography

Of note, this includes both content that I have used and that which I intend to use for future posts

Comments

Popular posts from this blog

ReactJS - Virtual DOM

So . . . How About React? If we’re going to start talking about how it functions, I think we should start by talking about what it works with. Many are already used to the HTML commonly associated with static website design. In it’s more basic, it can look something like this, though <h1>Hello World</h1> by itself in the file would yield the same output; this is trying to imitate a larger-scale structure. With this basic structure, combined with CSS-aided styling, we can have all the static content we want (and a bit can even be hidden/reformatted on hover or focus, to boot). From this point, we need JavaScript . . . sort of. How is JS usually So, back to JavaScript. As mentioned before, the language is one of the three core technologies of the world wide web. Used commonly on the client side, you can manipulate the content of the HTML code, the DOM, to do just about anything. For some great interactive examples, check out the W3School’s JavaScript HTML DOM Ev...

ReactJS - What is it?

So . . . How About React? What happens when an impressive Facebook engineer gets assigned to port XHP - a PHP version primarily relied upon for data validation and scrubbing to combat XSS - to JavaScript and maybe gets a bit carried away with it [5] ? React! ReactJS (also known as React.js or simply React) is a library of Javascript, a programming language pivotal in the rendering of webpage elements alongside HTML and CSS . While some libraries generally try to incorporate and adapt ‘the wheel’ to make some specialized processes easier, React joins the ranks of the increasingly many that set out to completely reinvent it in many parts. Image courtesy of xpagexplorer.org [15] Basically, what is it? Basically speaking, Javascript is a programming language that can be used to alter the content of the website’s layout. ReactJS, like any library, utilizes its base language to ease and optimize complex sets of operations. Its features rework many elements consid...