Book Image

React.js Essentials

By : Artemij Fedosejev
Book Image

React.js Essentials

By: Artemij Fedosejev

Overview of this book

Table of Contents (18 chapters)
React.js Essentials
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Foreword

Are you tired of writing jQuery callback soup? Does your blood boil when you need to write yet another template or configuration in your Angular app? Wondering why your application structure is so complex? If so, React.js is what you've been looking for. The declarative nature of React.js will help you build a UI for large applications with data that changes over time.

As a professional iOS and JavaScript frontend consultant, I always recommend that clients use the best technology available. With the latest push from Facebook, React.js has proven itself to be a solid choice to build maintainable and performant user interfaces that help our clients ship products and move fast. I was excited the moment I heard about React.js Essentials and even more excited about getting my hands on a copy.

Artemij Fedosejev, a veteran web developer and technical lead at a start-up company in London, demonstrates why a declarative programming style and one-way reactive data flow is often the best way to solve real-life programming problems. Whether you're working with consumer-facing applications or university research, React.js helps you build frontend UIs on both small and large scales. You'll never be lost in code again. Learn from Artemij's real-world experience in React.js Essentials, and you'll be creating user interfaces without increasing the complexity of your web application in no time.

This book has everything you need to get started with React.js. It guides you from the first steps down to the intricacies of Jest. The best way to learn is by doing, and throughout this book, you will work on a hands-on React.js project and learn how to build an application that receives and collects the latest photos from Twitter.

Software is constantly evolving and always moving forward. As developers, while practicing our craft, we always reach out to new horizons that stretch and improve our understanding of how great software should be built. Historically, software development and architecture has gone from structured programming to imperative programming. This made way for object-oriented programming (OOP) to become the de facto standard of software development today. Languages such as Java, Ruby, Objective-C, and many others have been built with the OOP paradigm in mind.

However, there was one rebel that embraced functional programming and it has gone down its own evolutionary path, which is JavaScript. React.js is a manifestation of this renewed way of thinking: "UI as a function of state." Facebook has put in a lot of effort into making the reactive approach accessible to us through its library. Unlike other popular frameworks that use templating systems, such as Ember.js and Angular.js, React.js is a UI library that uses a declarative style of programming to describe the UI state. You can think of React.js as the V in the conventional MVC architecture pattern, but it doesn't stop there. Facebook introduced Flux, a complementary application architecture that uses React's composable view components.

The latest approaches to solving programming problems have come full circle and are back to declarative programming. The rise of new paradigms, such as Reactive Extensions (Rx), Futures, and Promises, brings us back to thinking in terms of functions and using a declarative approach instead of OOP's imperative style. React.js incorporates some of these paradigms and React.js Essentials is your first step down this path, and I think you'll like where it takes you!

Alex Bush

Founder and Software Product Engineer at SmartCloud, Inc.