Developing UI requires understanding users, mobile phones, and the servers they talke to. If you pick up one of these frameworks, and understand all of the periphery, I say it's highly likely you can adapt to the other frameworks.

There's no value in being a master of Flutter, React, or any of the frameworks. It's of value to become a master of mobile development. Understand the ecosystems, understand the users, the needs, the limitations, etc. Understand the mobile's role in a larger service offering: the backend, the website, the emails, the community, the whole service.

Achieving mastery is obviously a high goal, but there are many levels along the way. And all that experience should adapt to new frameworks, new phones, and new devices. Think about that instead of getting trapped in the tool-of-the-day.

 

With frameworks like React Native and flutter, you're relying either on the framework to give you access to underlying APIs, or the knowledge on developing your own integrations. And as great as these abstractions are, they always impose some performance hit.

 

Thank you for your response! There is a constant pressure, I feel, to need to have applications be catered for both Android and iOS crowd, as they are the dominant forces in the market - also suggested by companies who put React Native as their requirement for new hires. So I have been under the notion that the said frameworks are the way to go, which is the basis of a dilemma on whether to dive into these frameworks, or go deeper to gain a better understand of Android :/

 

I'd say it's worth getting an understanding of React Native, but you can position yourself as able to dive into the underlying implementation whenever needed. Instead of being a JavaScript dev who knows how to build native, you can be a native developer who has an understanding of the abstracting integration.

 

Thank you guys for the responses! Really appreciate the eye-opening feedback considering that I am still learning along the way. Certainly has made the option to become a native developer more appealing :D

 

Most of devs who tried to debug ReactNative App or similar javascript multi platform "solution" would never again decide to use it for quality mobile app. Check AirBnb take on ReactNative for mobile medium.com/airbnb-engineering/suns... or some of their recent interviews/talks on podcasts and conferences. Basically they went for multi platform because they had devs with javascript knowledge and lack of native platform experience. After few years of doing so they realise it doesn't pay of on a long term.

To answer your question more precisely:

  • It is better to be native platform master (Android and/or iOS) especially if you develop just for one platform.
  • if you need fast, often quick and dirty thing to get it out, ReactNative might be ok for your use case
  • Flutter is promising in a much better way, so lets see how it will develop
Classic DEV Post from Aug 8 '18

Got My First Pull Request Accepted and Merged

Holy Shit, I Made Something That Someone Else Was Like "Ya, that works." Check...

/shook-ree/ I love solving problems through code
  1. Read Post πŸ€“
  2. Bookmark Post πŸ”–
  3. Profit??? πŸ€”