React Native Apps Are Hard Work!

Academind by Maximilian Schwarzmüller
A free video tutorial from Academind by Maximilian Schwarzmüller
Online Education
4.7 instructor rating • 32 courses • 1,699,228 students

Lecture description

React Native has its edges. Learn about some of the limitations you'll face in this lecture. And learn why it won't really be an issue.

Learn more from the full course

React Native - The Practical Guide [2022 Edition]

Use React Native and your React knowledge to build native iOS and Android Apps - incl. Push Notifications, Hooks, Redux

32:29:01 of on-demand video • Updated November 2021

  • Build native mobile apps with JavaScript and React
  • Dive deeper into React Native
  • Develop cross-platform (iOS and Android) mobile apps without knowing Swift, ObjectiveC or Java/ Android
English Getting started with React Native apps can be really hard work. It wasn't that hard with expo and indeed generally, expo makes working with React Native pretty simple and fun but it's important to understand that React Native is not about writing Javascript once and running it everywhere, it's instead about learning React Native once and then write code that is flexible regarding the platform it's running on. For example and you will see that throughout the course, there aren't that many components React Native ships with that would automatically adapt the way they look to the underlying platform, you as a developer instead have to find out on which platform your code is running and then adjust your styles to that platform to get a look that fits the platform or maybe even adjust your logic to that platform. The same for orientation or device size changes, you need to write code that is flexible, you will learn all about that in this course but you will see that writing React Native code is not about writing code once but instead, you will have to add some if checks to find out on which platform you're running, to adjust the look and feel of your app based on the platform and device size your app runs on. So to sum it up, you have no or very little cross-platform styling of components, most components that are built into React Native don't come with a lot of styling attached to them, you have to take care about styling instead and you only have a basic set of pre-built components anyways, don't expect a vast amount of pre-built components. If you worked with other alternatives like Flutter or Ionic, you're used to having a bunch of components which are prestyled and give you a lot of awesome functionality out of the box. React Native is much more barebone, you got some basic components which you need but then all components that would be a bit more complex are components you will have to build on your own based on these primitives you're given and indeed, you will see these primitives you're getting are actually all you need but again we're back to you will need to combine them manually and style them manually and that's something other alternatives sometimes do for you, for React Native, you have to do it on your own. Also as I just mentioned, for creating responsive designs where your app looks good on different device sizes and different device orientations, you don't really have tools that help you with that, you will have to write code that is flexible, that checks the available device size and that then automatically adjusts. So there is a lot of manual work to be done by you as you can tell but that also gives you a lot of power and in this course, you will get all the knowledge you need to master this and build truly amazing React Native applications.