What is React?
React is a javascript library ( not a framework, or language) that helps developers with quick UI-heavy web development with dynamic data. Born in Facebook, it has grown to be a very popular library among frontend developers, and runs on Node.js. It also makes it possible to create large web applications capable of changing data.
Why React?
- It has a one directional dataflow. One can only send data from the parent to the child, and not the other way around. This makes the architecture much cleaner and easier to debug.
- It is view only, and it has no model and components of the MVC model. Its view is a result of its state and vice versa, making the developer exclusively focus on front end.
- It has a 1400 strong army of open source contributors updating it for modern sensibilities, and as a result it is the fifth trending project in GitHub.
Why(not) React?
Since it is a rapidly changing language, developers must learn new syntax and APIs that are often not very well documented. This can create issues for code with many dependencies. React uses a syntax extension of JavaSCript called JSX, which allows you to describe what the UI looks like. Since it is mixed in with JavaScript, it might be overwhelming to developers that appreciate more of a separation of concern.
Tutorial and sites:
Links
- Preliminary react using codesandbox ( absolute begineers): https://codesandbox.io/s/csci-397-react-rjzw7v