This article aims to identify the pros and cons of both platforms based on well-defined criteria, and to provide a clear, fast, and comprehensive way of comparing them.
It is written for both technical and non-technical readers.
Since every reader will have different needs, capabilities, and resources, they naturally will also have different constraints and considerations regarding what platform is best suited to them.
(React-Native === RN)
Lets compare the platforms
I will try breaking down the different aspects of both platforms:
Both platforms can do the job of creating a real cross-platform app.
Both platforms have proven record in different app-stores, with well written large apps such as Instagram and Facebook and Uber for React-Native and Alibaba for Flutter.
Both have large development communities, with a slight advantage to React-Native, where Flutter is rapidly closing the gap and even passing.
Please note that bringing in a web developer to create a mobile app will still force the team to learn and understand mobile-related development, like product-life-cycle of mobile apps, whereas in contrast to web-development, that issuing a new version is online and immediate, in mobile, version updating can take weeks, and even so, there will always be some apps with old versions, support of old devices with old OS’s, that can not run certain product features due to old API’s. So well planning and well coding is crucial in mobile.
As a developer of over 20 years in mobile and web, especially mobile, I would put my bet on Flutter, the platform is more appealing for new developers, is less frustrating to develop and has a shorter learning curve for Object-Oriented developers.
For large and complex projects, you will definitely need an Object-Oriented language like Dart, but for small or simple-logic projects, React-Native can do the job.
Sorry React-js and React-Native developers, but I think I will stick to Flutter for the time being.
Written by: Ari Deane, Mobile iOS & Android Expert