Choosing the right mobile technology

Mobile technologies

Choosing the right technology for your mobile app is a key decision to make while starting a new mobile project. There are two different approaches for creating mobile applications:

  • Native - which consists of creating separate projects with separate codebase for Android (using Kotlin and Java) and (using Swift and ObjC);
  • Hybrid solutions - which are based on one of the popular cross-platform development frameworks like Flutter, React Native, etc.

Developing native applications is still one of the most popular approaches when it comes to mobile development because it is the most powerful tool for creating a complete application for a single platform, but nowadays, most of the mobile applications are targeting both Android and iOS platforms and that means separate projects for every platform when choosing native app development. With cross-platform solutions, there is no need for building separate projects, because both Android and iOS apps are using the same codebase which can be written by a single developer.

Currently, the two most popular frameworks for cross-platform app development are Flutter and React Native. Each of them has it's own pros.

Flutter

  • Created by Google, officially released in December 2018
  • Flutter does its own UI drawing - apps look and behave similarly on every Android and iOS version
  • Uses Dart (created by Google) (client-optimized language for fast apps on any platform) as the main programming language
  • Increasing community
  • Great documentation
  • A lot of open-source libraries
  • Allows sharing the code even on Web and Desktop.

React Native

  • Created by Facebook, officially released in March 2015
  • Native look of the app - React Native views maps directly to the native view equivalent on whatever platform it is running
  • Uses a popular programming language - JavaScript (you can use TypeScript as well)
  • Huge community
  • A lot of open-source libraries
  • Allows sharing the code with Web using React Js.

Summary

Using one of the cross-platform frameworks mentioned above gives more benefits for both product owner and mobile developer:

  • Time&cost optimization - there is no need to create entirely separate codebase for each platform which means that the whole project (for both Android and iOS) can be written by a single developer
  • Faster code writing - thanks to Hot-Reload (https://flutter.dev/docs/development/tools/hot-reload) developer can quickly and easily experiment, build UIs, add features, and fix bugs without rebuilding the whole app which can take dozen of time
  • One code for two platforms - one codebase means the same behavior on every platform, fewer bugs, easier and more efficient testing when it comes to automatic tests
  • Fallback to Native projects - both Flutter and React Native consist of native Android and iOS projects underneath and because of that developer can still fallback to Native development when requires.

As a result, except for the cases where the applications are heavily relying on the native hardware components it is recommended to consider the cross-platform solutions for shortening the release cycle as well as cutting the budget for product development.

Author

Rafał

LeanCode

Mobile Team Leader

Damian

LeanCode

Mobile Flutter Developer
logo

We build communities

Technology

Flutter

React Native

Related services

Mobile Apps

Product Design

IT Consulting

We start in simple 3 steps

step_icon

4h long workshop

During 4h we analyze the problem, assess solution and create the product roadmap.
step_icon

Proof of concept

Within next 3 days we prepare the technical proof of concept to check if it fits business.
step_icon

Recommendation

After the POC is accomplished we prepare the recommendation on how to implement the product with the offer.

Igor Pielas

Activy CEO

I can recommend LeanCode for their entrepreneurial approach towards building digital products.

Request the 5-STARS workshop

Discover new ways to build digital product that solves real life problems in just 4h
or send us your brief at hello@leancode.pl