React js The Ultimate Beginner – Peterson, Kathleen

React js  The Ultimate Beginner - Peterson, Kathleen

React js The Ultimate Beginner – Peterson, Kathleen
epub | 9.39 MB | English | Isbn:979-8643400943 |
Author: Peterson, Kathleen | PAge: 144 | Year: 2020


Before you begin, please note that this is a beginner-friendly guide that covers the concepts I classify as fundamentals for working with React. It is not a complete guide to React but rather a complete introduction.At the end of this guide, I list a few next-level resources for you. This guide will pave the way for you to understand them.
React JS

The Ultimate Beginner’s Guide to Learn React js Programming Step by Step – 1st Edition (2020)

React is defined as a JavaScript library for building user interfaces. Let’s start by talking about the two different parts of this definition.React is a JavaScript "library". It is not exactly a "framework". It is not a complete solution and you will often need to use more libraries with React to form any solution. React does not assume anything about the other parts in any solution.Frameworks serve a great purpose, especially for young teams and startups. When working with a framework, many smart design decisions are already made for you, which gives you a clear path to focus on writing good application-level logic. However, frameworks come with some disadvantages. For experienced developers working on large codebases, these disadvantages are sometimes a deal breaker.Frameworks are not flexible, although some claim to be. A framework usually wants you to code everything a certain way. If you try to deviate from that way, the framework usually ends up fighting you about it. Frameworks are also usually large and full of features. If you need to use only a small piece of them, you have to include the whole thing anyway. Admittedly, this point is changing today but it is still not ideal. Some frameworks are going modular, which I think is great, but I am a big fan of the pure Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. – Doug McIlroyReact follows the Unix philosophy because it is a small library that focuses on just one thing and on doing that thing extremely well. That "one thing" is the second part of the React’s definition: Building User Interfaces.A User Interface (UI) is anything we put in front of users to have them interact with a machine. UIs are everywhere, from the simple buttons on a microwave to the dashboard of a space shuttle. If the device we are trying to interface can understand JavaScript, we can use React to describe a UI for it. Since Web browsers understand JavaScript, we can use React to describe Web UIs.I like to use the word describe here because that is what we basically do with React. We just tell it what we want! React will then build the actual UI, on our behalf, in the Web browser. Without React or similar libraries, we would need to manually build UIs with native Web APIs and JavaScript and that is not as easy.When you hear the statement that "React is declarative" this is exactly what it means. We describe UIs with React and tell it what we want (not how to do it). React will take care of the "how" and translate our declarative descriptions (which we write in the React language) to actual UIs in the browser. React shares this simple declarative power with HTML itself, but with React we get to be declarative for HTML UIs that represent dynamic data, not just static data.When React was released, there was a lot of buzz about its performance because it introduced the smart idea of a virtual DOM that can be used to reconcile the actual DOM (and we’ll talk about that in the next section).DOM is "Document Object Model". It’s the browsers’ programming interface for HTML (and XML) documents that treats them as tree structures. The DOM API can be used to change a document structure, style, and content.

Category:JavaScript Programming, Introductory & Beginning Programming, Programming Languages

Leave a Reply

Your email address will not be published. Required fields are marked *