WEBVTT

00:01.590 --> 00:02.270
Hi.

00:02.520 --> 00:10.230
In this section we'll be talking about React Native and I will explain why I picked React Native for

00:10.230 --> 00:15.830
our development, for our mobile application and why it might be useful.

00:15.840 --> 00:21.480
The first reason why react native, not the other solution we might have.

00:21.510 --> 00:23.300
It's a cross-platform.

00:23.310 --> 00:24.180
What does it mean?

00:24.360 --> 00:25.230
Cross-platform?

00:25.230 --> 00:30.480
That means you can write one code and it will compile into both Android and iOS.

00:30.510 --> 00:34.890
That's very convenient, but it's not the only framework that does that.

00:34.920 --> 00:42.810
You have other frameworks like Nativescript, you have Cordova and other Solution, and the reason I

00:42.810 --> 00:51.180
picked React Native is because we already know react and once we know react, we are kind of prepared

00:51.180 --> 00:53.430
to do React Native.

00:53.460 --> 01:00.960
It's very similar what we've done before and in fact it's still our react that we know so many things

01:01.060 --> 01:05.140
will be exactly the same as we've done before with our web application.

01:05.350 --> 01:07.330
So it's not going to be that different.

01:07.360 --> 01:09.640
React has another advantage.

01:09.640 --> 01:12.580
It will compile into fully native application.

01:12.580 --> 01:18.160
It's not like, for example, Phonegap Cordova application that will be Webview based.

01:18.160 --> 01:20.860
So it's a technology is based on the webview.

01:20.890 --> 01:23.890
That means it is a native application.

01:23.890 --> 01:29.860
And inside native application you have embedded web page, which is kind of very bad performance.

01:29.860 --> 01:32.500
It's much slower than the native solution.

01:32.500 --> 01:37.510
So React Native will compile into a native code.

01:37.510 --> 01:45.250
That means you write a JavaScript and that JavaScript will be compiled and prepared a fully native application.

01:45.250 --> 01:50.710
And that's very convenient because you write the language, you know, and you don't need to write two

01:50.710 --> 01:53.650
separate application for both platforms.

01:53.800 --> 01:56.080
So that's being said.

01:56.170 --> 02:03.040
We can take a look at the moment we are on the GitHub, IO React Native and if we will take a closer

02:03.040 --> 02:08.290
look at the URL here, you can see that's actually domain from Facebook.

02:08.530 --> 02:12.550
Facebook creates both react and react native.

02:12.580 --> 02:20.470
So having Facebook backed up on this project, we can be sure that it's not going to go anywhere soon.

02:20.470 --> 02:24.520
So there will be a developed and maintained very well.

02:24.520 --> 02:28.030
And actually, if you will go here, who is using React Native?

02:28.060 --> 02:30.250
You can see a big branch here.

02:30.250 --> 02:35.140
So obviously the Facebook application is using React Native.

02:35.170 --> 02:38.350
So whatever I do in the Facebook, you can do it as well.

02:38.350 --> 02:42.580
You have other things like Instagram, Pinterest, Skype and so on.

02:42.580 --> 02:50.830
So the list is huge and it's actually you will see a very powerful and very famous application that

02:50.830 --> 02:52.630
millions of users using that.

02:52.630 --> 02:57.340
And if they can do it in React Native, that means almost everything is possible.

02:57.610 --> 03:05.080
So coming back here and then we can take a look at at the few features, what we actually have.

03:05.110 --> 03:11.560
So as I mentioned before, we can actually write one code and we can have it on both platforms and then

03:11.560 --> 03:15.250
we can use our JavaScript or TypeScript if you prefer.

03:15.250 --> 03:24.120
So you will write JavaScript and it will compile into native and that's very easy to use and it's a

03:24.130 --> 03:27.010
cross-platform, as I also mentioned before.

03:27.520 --> 03:31.060
And then we will have a fast refresh.

03:31.060 --> 03:38.650
Once we'll start working with React, then we will be able to see our application running over either

03:38.680 --> 03:43.030
on your own mobile device or in an emulator or simulator.

03:43.030 --> 03:50.080
And I will show you all the different possibilities we have and you can pick which one is the best for

03:50.080 --> 03:50.410
you.

03:50.410 --> 03:54.430
So as I mentioned, this is Facebook supported and it's community driven.

03:54.430 --> 04:04.480
So at this point it's mature enough to have a production ready application with React Native because

04:04.480 --> 04:07.870
it's on the market for many years at the moment.

04:07.870 --> 04:16.720
So there is no risk of investing your time to learn something that might go off the market very soon.

04:16.720 --> 04:19.180
So I think it's a solid investment.

04:19.210 --> 04:27.190
Your time in and React Native is very powerful framework that will help us create application mobile

04:27.190 --> 04:31.060
application on both platforms, Android and iOS.

04:31.060 --> 04:35.110
And I will show you how we can start with React Native in the next video.
