React-Native guidelines for the beginner

React-Native guidelines for the beginner

Hello developer’s, I want to share some React Native stuff for react-native beginner 

React Native, developed and maintained by Facebook, is an open source framework to develop cross-platform mobile applications, using the programming language JavaScript.

Currently in its 0.57 version, React Native is based on Facebook’s front-end library called ReactJS and share many concepts.

React uses a virtual DOM which acts as a shadow to real DOM available. When an element changes, that change is reflected on the real DOM by Virtual DOM using a node that corresponds to each element.

However, in React Native, there is no DOM rather than Native Components which are provided by platforms such as iOS and Android. There are no web views here. React Native has an instance of JavaScriptCore to execute JS code when an application starts. React Native uses RCTBridgeModule to make a connection between native code and JavaScript code. It is currently being used by Facebook, Instagram, Uber, Wix, Tesla and many more.

My advice, before you leap to make gigantic projects, start with the basics. Learn the concepts as each specific component to the curve, make sure to apply them as much as you can and build small things.

Take small steps, build small things at first before dip your toes deep in the complexity of state management libraries such as Redux and Mobx, or persisting data, using third party APIs, using TypeScript or Flow, and so on.

These are just tools, you do not need to know them on day one (but I am not saying you have to never learn about them. The keyword here is that they are TOOLS). If you are new to JavaScript, make sure you are clear with the basic ES6 features such as classes, arrow functions etc. Then, you must go through the basic ReactJS concepts such as props, state, and stateless components in general.

In summary, start by familiarizing yourself with:

  • ES6 Features
  • ReactJS Components API and LifeCycle methods
  • Setting up a development environment for React Native
  • Flexbox

Once you have basic concepts clear in your mind and have played around a bit to get some amount of hands-on experience, it is time to advance further. Start building bigger apps that work or behave like a real application and interact with real-time data. Here is a list of things you can learn to advance in your journey.

  • Offline data storage with AsyncStorage
  • Working with third-party APIs
  • Maps
  • Splash Screens
  • Navigation
  • Redux (for state management)
  • Redux Saga and Persist
  • Tests and TDD
  • Push notifications
  • UI Animations
  • Build and publish your app
  • Continuous Delivery or CI


Conclusion

In simple words, React Native brings the React to mobile app development. Its goal isn’t to write the code once and run it on any platform. The main goal here is to learn once and write-anywhere. An important distinction to make.

To view or add a comment, sign in

More articles by Rahul Sapkal

  • ReactStrap for React projects

    Hello React developers, There are many different ways to build modern web applications with JavaScript and CSS…

Others also viewed

Explore content categories