React is the groundbreaking tool that web developers may not even know they need, but can’t let go of once they’ve tried. This is definitely true for the two authors of this book, as well as for many other enthusiastic web developers out there. React is immensely popular—and for good reason.
If you were doing web development in the early 2000s, all you needed was some HTML and a server-side language such as Perl or PHP. Ah, the good old days of putting in alert() boxes just to debug your frontend code. The internet has evolved a lot since then, and the complexity of building websites has increased dramatically. Websites have become web applications with complex user interfaces (UIs), business logic, and data layers that require changes and updates over time—and often in real time.
Many JavaScript template libraries have been written to try to solve the problems of complex UIs. But they still require developers to adhere to the old separation of concerns—which splits style (Cascading Style Sheets [CSS]), data and structure (HTML), and dynamic interactions (JavaScript)—and they don’t meet modern-day needs (remember DHTML?).