Why I moved to React Native
Vložit
- čas přidán 19. 05. 2024
- Let's talk about why I enjoy React Native so much and why you should maybe give it a try as well.
🔥 Learn React Native FAST: galaxies.dev
#############################
❤️ You can also find me on:
Twitter: / schlimmson
Instagram: / simongrimm_
#############################
Chapters:
00:00 Intro
00:47 Why I Didn't Use React In The Past
02:04 Why I Switched To React Native
04:22 Why YOU Should Try React Native
07:26 Should You give React Native & Expo a Try?
07:47 Do I Need to Switch Off ____ For React Native?
08:14 Is Angular or React Better With Ionic?
08:43 Is React Native Better Than Flutter or Capacitor?
09:10 Is React Native the Best Framework?
10:02 Why I Switched to React Native
11:32 Outro
#reactnative #expo - Věda a technologie
Join Galaxies.dev today - the Home of the Best React Native content🚀
I started using React Native because I'm a React developer and I was tasked with building a mobile app at work, using any technology I choose.
So, naturally I chose React Native.
OMG!!! You were devdactic???
Your blog really helped my Ionic journey back in 2015/2016 even though i later dropped Ionic.
Thanks for your dedication.
Instant sub.
Haha yes I am :D
Hope to still see some Ionic/Angular content as well, in particularly when there is something new, as this channel has been a huge help to me in the past.
Thanks for making this video! I love both frameworks, but in order to dislike something you must try it first!
Fair enough!
Thank you for the tips
Love this. Very straight to the point. Will ever choose React Native
Thanks mate!
I hated working on ionic. It was a miserable experience i hope to never repeat. React native using actual native components is far superior.
I feel your pain, bro... we dropped a project because of how painful it never worked well with React. Someone said it is very good with Angular
@@oabdulazeezionic is built on top of angular. It is okay. 😅
Ionic is just a pain. Coming from web development it was pretty easy to get started with - but to be honst Ionic is just not good.
My two cents on switching: I've used react native back in late 2018 and it was tragic. Then Flutter entered the game and looked very promising. Since than I never worked with native apps professionally, but I kept working with react web, so now I want to take some app projects from the paper and react native is the best choice, since I have a long background with react. But, in the long run, my plan is to migrate to Flutter, that I find it's by far the best performance we can have for hybrid apps
React Native in 2018 was really tragic... that's why we have room for improvement. While I'm looking to migrate to flutter too mainly because it has some jobs in its entire ecosystem. React Native is actually doing something different now. Especially with Expo Workflow.
I would actually submit that Flutter being 'More performant' is a myth coming from older versions of Flutter and React Native. Current versions are neck and neck and I'd even give a slight edge to RN as you get more true to native rendering experience. RN only suffers from high computation operations like cryptography, but with the new modules system, it's easy to offload heavy tasks to the native side.
All well said and I agree. Don't get me wrong, Flutter is a big leap of faith for any web dev transitioning but the merits are worth it in most cases.
@@iykazorji8171 It is definitely not neck and neck. Flutter is still a lot more performant, and will stay that way simply because of how Flutter renders the application. Now with the impeller engine it is even faster.
React Native is compelling when you want native support, and that is a non-goal for Flutter. This has its merits and demerits.
The good thing about native support out the box is that you have all the functionality of the underlying OS, including accessibility and even text functions.
For Flutter, something that should be non-trivial (text selection) becomes an issue (Their recent updates take care of a lot of it, but it is an abstraction rather than actually accessing native code).
However, Flutter enjoys having amazing DX and cross-platform consistency with great performance. It is really more of an apples to oranges comparison once you really take the time to look at it.
I work both but I prefer Angular than RN in some projects... and vice versa!
Thanks! Luckily I moved quickly to Expo after not spending too much time on ionic. Performance is much better.
Very helpful and Wise pov ❤❤❤❤
Thanks a lot 😊
Hi Simon
My understanding for ionic gives you the benefit to write cross platform application eg: (web, android or IOS), Now am looking forward on react do we have similar benefits with react as well where I can code once and deploy for any platform I am really excited to understand the in depth differences between ionic and react and as far in terms of career perspective should I continue with ionic or react ?
Glad to hear you that, cause after release of your first video of rn , i was like, he even made a video saying why he dont use react native. I see yor point, one thing thtat i would like to see here, creating pwa using expo
You can always change opinions about something! ANd yes, added Expo PWA to my list!
@@galaxies_dev wisdom answer...
Well explained. 👏👏
Thank you 🙂
Hi, Simon!
Does Expo support ViroReact? I want to make a mobile app with AR features. I'm not sure tho if Expo supports ViroReact.
Dude we migrated our app from cordova to capcitor just now and now you're leaving ionic, please don't forsake us, your ionic videos really helped us build our application.
Don't worry, I'm still here!
🤣🤣🤣
Can you please make a video on how to make a reorderable/sortable/draggable flatlist in react native similar to a organisable queue in music player app.
I've surfed the web but couldn't find anything performant.
Would like to see how to write some native code in Java (Kotlin) or Swift in React Native App - just some component. I've heard Facebook app does it this way. Simple screens are written in React Native and the more advanced screens are written in native code and merged with React Native app.
You can do this quite easily with Expo Modules, got a new course on that: galaxies.dev/course/expo-modules/1-1
There is a page in RN documentation regarding writing native modules and components. Development -> Guides -> Native Modules. I guess this is something you are looking for.
what's your next Project ? please make huge Full Stack one with RN CLI instead of EXPO please please
Hi Simon,
I hope you're doing well. I would appreciate your recommendation on whether to use React Native CLI or Expo for a real company app, especially when starting from scratch.
Thank you, Simon. 😊
Expo, all the time. Watch my other video on that: czcams.com/video/q-sKCsscIsc/video.html
I have convinced my colleagues since like 6 months back so now we build all our new React Native projects with Expo, so far 2 that are almost done and one new starting being worked on soon 😁
@@galaxies_dev Thank you, Simon. You're the best.
don't forget to use nativewind the tailwind for rn
I'm liking the nextjs capacitor stack as of late
Great choice as well!
thats also great
I really wanted to get this working (have been trying the last few days) but it just seems very fragile and kept hitting problems. I started with the NextJs template suggested on the capacitor site. There's not much info for support about this combination so was worried about spending too much time on it
Hi my friend tne best master of React Native I am learning React Native too, it's interesting
Thanks! 😃
React Native is the way 🤪
I don't think flutter is necessarily better than react-native or vice-of-versa (the widget part of flutter is easy to make UI) , I use both but i feel react-native has better and robust state management as compared to flutter.
When I tell people this they think I just dislike flutter the truth is dart has a lot of features that Javascript doesn't have that the only thing and if we want performance we would have gone for native languages to develop the app
I'm a Flutter dev and I can say that this is the most correct comment I've seen about state management.
Google decided that the community should better handle state management with packages and that's where the true Flutter war begins. That is also what pushes newer devs away from Flutter when they arw overwhelmed with people telling them which State Management package is better....
Google should pick one, put it into base Flutter, and call it a day. Honestly StatefulWidget and StatelessWidget and InheritedWidget isn't enough.
I think Flutter has some strengths (like the UI elements, I enjoyed the widgets to some degree as well) but so does Capacitor (100% shared code).
I simply feel for the masses, RN is the "general" best approach - but for some cases the other frameworks work better. There is simply no single best, just maybe best for case XYZ.
@@galaxies_dev yes absolutely i agree with you. We cannot compare framework to differentiate which is good or bad. However, i have started to work with RN because my teams has been working in React for a long time and adopting RN will be quite easier. Also i would like to thank you for your effort to contribute RN tutorials in future.
@@D_bugitIt would be best approach if we have go with native , but not all company can develop and maintain both apps (ios/android) and not to mention for startup hybrid approach is better. If we don't implement core native features then we can easily adopt hybrid apps and the performance does not matter.
Expo it's optional for smart projects, you would be a video with Expo and without Expo the same application
Do you think Ionic/Capacitor is on the decline? Do you envision the framework disappearing any time soon or being poorly supported?
good question, i hope not
Ionic unfortunately has already been poorly supported, for a long time.
yaaas
Ionic + Vue is the best for me. The biggest issue with RN is having to write dual code for web and mobile. Time is money and RN takes longer than Vue. Vue with Pinia just makes so much sense and allows me to code things extremely fast.
I switched my project from Ionic + Angular to Ionic + Vue and the stability and speed of my app is improved
What about Flutter
Valid points - but some people only want ios + android, and care more about the native performance of those apps. There are different projects, and different tools that work best!
There's React Native for the Web. 🤷🏾♂️
with Tamagui you can share the same RN code on RN and web
I started my journey in React and React Native three days ago. I love Ionic and Angular, but I want to experiment these technologies.
Smart choice.
Exception: Pronunciation error [05:52] >> Suite of tools with pronunciation: "suit of tools" not recognized. Did you mean to use pronunciation: "sweet of tools"?
So if you a single developer who wants to code a website and an app off it, you should use ionic+capacitor ?
Expo Web has gotten a lot better, and the Solito Monorepo setup with Expo and NextJS app are also very doable for a solo developer.
If you don't care about the "nativeness" of your native app, or probably even prioritise the web app higher, then you could go with Capacitor.
It really depends on your skills, and what the end result should look like.
@@galaxies_dev thank you for your answer. I`m a beginner but I have a concrete plan what I wanna build. I wanna build a site like indeed or stepstone for an ultra specific niche. The app does not have to be the greatest. It should do the job ig (pun intended)
React Native needs you to be a UI designer of 20 years to create a good looking UI whereas Flutter already has Material 3 (which ionic and RN don't) and it makes the process of creating the UI so much easier even for a newbie.
React native elements , react native paper is there for this same reason
Ionic-capacitor has Quasar
Yes flutter has material design 3 also it is the most hated part from flutter 🙂
Same here
Expo v RN CLI? which one we should go with? have worked with RN CLI in the past. but my fear is React's unnecessary hooks. Way too much hooks make life complex.
I would almost always pick Expo nowadays
@@wezter96 anything specific which is better then CLI?
Why not Flutter?
whoop, whoop
I love react native, i love ionic & capacitor.
Here's how i use both stack in my projects
B2B app >> Ionic: These customers don't care too much about animation and overly performant app. If it works as advertised they're good.
B2C >> React Native: For when i need to build apps with heavy animations. Reanimated makes it so easy we don't have anything in ionic that good unless maybe you use React with framer motion. But then again the animation will suck on low end android device.
Overall have the ability to choose is a great thing for us developers.
This perfectly sums up my feelings about the stacks as well! They both shine in different cases.
Ij
I saw on twitter you just revisited React Native about a few weeks ago, I see it's made a great impression?
@@iykazorji8171 Yeah it did. It took a couple days to wrap my head around expo router. After that I enjoyed my experience.
This may be partly because I already love React.
flutter❤
I've been using Angular since 2016 I have a feeling the framework is on the decline for few versions now. I recently tried to switch my app from A14 to A17 its Firebase, Ionic Based app and it was not stable at all. I have few other projects with Firebase and Material and they both ran into issues during migration. I might give React Native a chance but my hearth says Flutter(if we exclude the dart part)
I tried flutter and it’s the worst of all worlds imho. Doesn’t use any native libs/features so everything is reimplemented in an almost working way. Also very verbose. RN can be painful too but at least it’s a transferable skill and heavily invested in by Facebook.
Simon gave up on ionic/angular?😮
Nope
Ionic will not atract new people, because when native in-app payments, native login, secure storage, altering camera style, taking video (2year old package?) or do anything with ML (machine learning) on camera is non-existent or only in VIP package for few thousands monthly, then framework is done for anything modern to create, apart from website to app conversion. And OutSystems are making Ionic as corporate private technology for them, not really usable for anyone else.
Why do you think devs are leaving that framework?
And with that Angular also starting to be kind of useless skill in modern environment.
Jut check the job market before learning anything in IT. React / NodeJS / Python / Java / PHP are still good on the market and I think React will be for years to come.
Flutter beat React Native in popularity in 2023. Not trying to start a war. I just saw it interesting how after trying RN and Flutter, I moved on to Flutter because NPM dependency hell. But Flutter also has over the air updates with shorebird.
I have all the respect for Simon, so I'm happy that he found a happy place. All devs need a happy place.
Agree, many devs enjoy Flutter and that's cool - it's just not for me, and I think RN has some advantages. But Flutter shines in other areas and continues to get better all the time as well!
@@galaxies_dev sssssshhhh..... Don't let others know but 1 huge advantage RN has over Flutter is when it comes to Text handling such as copy, paste, select etc...
Flutter struggles with that function because they have to build it from scratch while abiding with the normal behaviors of the OS expected function.
It's better than before, but it's going to be a while to get it right.
@@kennyfully88 The first actual good argument that comes from a person who seems to use Flutter. All RN devs just constantly crap on Flutter without giving it a fair shot, but the DX of Flutter was SOO much better than RN. When you do an update for React Native, you've to pray that nothing breaks. For Flutter, you'll only be surprised if anything breaks. You have a lot less headache over builds and dependencies with Flutter.
@@SayWhat6187say whatever you want but don't ever say Flutter is better than React Native
Period
the reason i decided to move to rn is because i already use react.
The ecosystem is a big reason, agree
but what is better? React native or flutter ?
Depends, both have pro and con
If you are similar with JS RN is a go for you
If you are not and want from scratch as a mobile developer Flutter is a go for you
The downside is you don't have pixel perfect control over layout and if you're building an app that is performance heavy and every little bit of performance matters then you're doomed to fail. Thats why big enterprises use native (swift, obj-c and java, kotlin) but for the majority of the use cases out there which are CRUD apps React native does the job.
React is so un-organized and messy... I loved that you used some good ordered Angular + Ionic stack, and I am sad now for you to leave that forrever. I am not unsubscribing, but you was the very reason I started to learn Angular and I have a job now from that since 2019. I am greatful to you and I accept your choice/transition.
Skill issue, I’ve seen my fair share of terribly messy angular repos
i would love to join your pro membership but you price is not friendly to a third world country like mine😪
Contact me by email please, we do offer PPP ✌️
i'm not sure if React Native is better that Flutter.
It is.
I thought you moved from Flutter
no more ionic+react ? omg
Did you watch the whole video?
I think this video is the end of Ionic
Riddle me this... Try to find a proper auth implementation.... At work we tried using firebase with auth, simply no solution. You are forced to eject the expo app into a standalone dev build just to have some community-made firebase integration. It's a headache and it still is not production ready, but still is the best solution for cross-platform dev.
💔
i move from native java to hybrid 😂😂😂😂
why? shouldn't native more mature and irreplaceable?
❤❤❤ booooo!!!! Traitor! Jk, every crazy developer for himself. Good points dough!
Why TF companies purchases this projects? They can fork...
i tried react native and i'm regret. capacitor is way more better in terms of DX, package size, building time. You chose react native because of more viewers not because it's better
So because you tried it and you didn't like it that invalidates Simon's decision to use React Native... Gosh what a self-entitled comment.
@@neneodonkorthis is not personal. Its abot DX
full name: react native shit , learn every time and shit everywhere
Why should I trust you, when you were dishonest to push Ionic, when there were better alternative out there? Go figure.
Simon I now hate you, you let us down
DONT DO IT IM WARNING YOU
coz ionic is dead
Not really
why not flutter?
Why not Flutter?
Just too many downsides for me personally, and too far off from web development!