The basics of functional programming
Apart from following the best practices when we write JSX and use a linter to enforce consistency and find errors earlier, there is one more thing we can do to clean up our code: follow a Functional Programming (FP)Â style.
As discussed in Chapter 1, Everything You Should Know About React, React has a declarative programming approach that makes our code more readable.
Functional Programming  is a declarative paradigm, where side-effects are avoided and data is considered immutable to make the code easier to maintain and to reason about.
Don't consider the following section an exhaustive guide to functional programming; it is only an introduction to get started with some concepts that are commonly used in React and of which you should be aware.
First-class objects
In JavaScript, functions are first-class objects, which means that they can be assigned to variables and passed as parameters to other functions.
This allows us to introduce the concept...