Mobile app development

Pawix

Regular Member
Joined
Apr 2, 2017
Messages
370
Reaction score
205
There are a few different ways of developing the mobile app. How is your experience with it, which one is the best and which one has the best cost to stuff done ratio?

1. Native Android and iOS development.
This has the most resources available, has the best support and will last as long as Android and iOS are there.
For Android, for a few years Kotlin language is the main language of Android development, Java isn't relevant anymore, so the logic part is written in Kotlin
The UI is written in XML files representing the components. This might change soon as there is Jetpack Compose in development which is a kind of reactive framework similar to what we got used to when working with modern web app frameworks.
For IOS, logic is written in Swift, which is more pleasant than the language used before -- ObjectiveC.
For the UI, Apple has it's own solution UIKit, but there is a new thing incoming -- SwiftUI which is similar to what JetPack is doing in Android.

To me, writting the code natively is the best way to have top quality app, but it's also the most expensive way.

2. React Native
This uses react framework to handle the logic written in JavaScript/TypeScript and represent the UI using native components of Android and iOS. The good thing about it is that developer doesn't have to know about how React Native displays the UI with native Android and iOS components as long as it's a simple UI.
This might be a quick way for web developers to develop a mobile app that feels native as the UI is native. It seems cheaper to develop smaller apps handling 1 code for both Android and iOS, but not as flexible in terms of UI.

3.Flutter
Flutter uses Dart for the logic and it's own rendering engine for displaying the UI. The benefits of the 1 shared code of React Native, but without limitations of UI.
Dart language is typed and null safe which makes developers make less mistakes when writting the app.
The problem with it that for some users the UI doesn't feel native, because it's not native as it doesn't use native rendering
 
Yes, all the above listed developments are good examples. According to my experience, I prefer Native, React Native, and Flutter because of the following reasons:

For React Native
1. Cross-platform compatibility
One of the biggest benefits of using React Native is the codebase. As a result, cross applications will show the same level of performance.

2. Coding a familiar programming language
To create app using React Native, you dont require any developers to learn different languages as they are already familiar with Javascript.

For Native
1. Security
Native Apps are protected by various layers of iOS, which makes them hard to misuse. They are not dependent on any third party apps.

2. Performance
Native apps are very responsive, quick, and provide an excellent user experience. The reason behind their quick performance is that the language in which they write is specific to the ecosystem of the platform.

For Flutter
1.
Low Development Cost
The reason for using Flutter is that it is budget friendly. It depends on the project and its requirements.

2. Ability to create great designs
Flutter has customized widgets and components that allow the developers to create mobile apps that are as unique as possible.
 
Back
Top