Table of contents:

One app for all devices: what is cross-platform development and why it is beneficial
One app for all devices: what is cross-platform development and why it is beneficial
Anonim

Order groceries, make an appointment with a doctor, pay for utilities - all these issues can be solved using the phone. That is why mobile applications are so important today: they help a business build relationships with an audience and even increase sales. The trend in the world of applications is cross-platform development, when a program with one code is created immediately for iOS and Android. Together with the company that develops such applications, we will tell you in more detail what it is and why you need it.

One app for all devices: what is cross-platform development and why it is beneficial
One app for all devices: what is cross-platform development and why it is beneficial

The article was prepared with the support of the Department of Entrepreneurship and Innovative Development of the city of Moscow. FriFlex is the winner of the Lifehacker and DPiIR competition.

Which business needs a mobile app and why?

A mobile business app is a way to increase sales and audience loyalty. In the application, customers can make a purchase in one click or quickly contact a manager. For businesses, an app is an easy way to remind you of yourself, for example via push notifications. They will inform you about great deals or special promotions. You can integrate a bonus or discount store card into the mobile application so that the client does not have to carry it with him in his wallet.

For example, an insurance company can implement in the application the ability to quickly issue insurance products, have all the documents at hand. Medical center - an appointment with a doctor, access to a medical record. Fitness club - an opportunity to sign up for workouts, replenish your account. Cafe, bar, restaurant - view the menu. Clothing brand - fitting with augmented reality tools.

For stores selling durable goods (cars, expensive household appliances), the app is not the main sales channel, but if supplemented with useful features for the buyer, it can become a powerful competitive advantage. For example, auto dealerships add to the application the ability to sign up for maintenance or buy OSAGO (through integration with insurance companies). The app can also provide additional benefits through ads or paid downloads.

Why Choose Cross Platform Development?

There are three main approaches to application development: PWA (Progressive Web Application), native and cross-platform. PWA is a technology that transforms a website into a mobile application. Native mobile development creates apps for one operating system, separate for iOS and Android. Cross-platform - for several operating systems at once.

There are over five billion smartphones in the world. Of these, about 85% work on Android, the remaining 15% on iOS. In Russia, a little more than 21% of people use smartphones on iOS, and 78.5% on Android. It seems that in this case it is more profitable to develop a native Android application. But in this case, companies will lose their audience of iOS owners. At first, the lack of an application will be a minor disadvantage for them, but sooner or later they will go to competitors. However, it takes longer and more expensive to create two separate native apps for Android and iOS. To do this, you have to:

  • duplicate the staff of mobile developers;
  • look for Android and iOS programmers in a very competitive HR market;
  • Synchronize Android and iOS applications (one of the platforms can be developed faster);
  • increase development management costs.

These problems can be avoided by making a cross-platform application. They are created using cross-platform frameworks - components (software libraries, modules) linked into a single framework, written on the basis of a specific programming language.

Framework Xamarin React Native Kotlin Multiplatform Flutter
Submission year 2011 2015 2018, Alpha version in 2020 2017
Main vendor Microsoft Facebook JetBrains Google / Alphabet
Programming language C # JavaScript Kotlin Dart
What the interface is written on XAML / xamarin forms JSX UI is written natively for each platform Dart
Current popularity High: 44k questions on the xamarin tag on Stack Overflow, 5, 1k stars on GitHub Very high: 92k questions on react native on Stack Overflow, 92k, 8k stars on GitHub Medium: less than 1,000 questions on the kotlin-multiplatform tag on Stack Overflow, 34,600 stars on GitHub Very high: 73k questions for flutter on Stack Overflow, 111k stars on GitHub

One of the most popular frameworks today is Google's Flutter. Flutter employs Alibaba, Philips Hue, Hamilton, Tencent, Grab, Groupon, Dixy Group, Yandex. Drive and others.

Image
Image

Peter Chernyshev CEO FriFlex

At FriFlex, we specialize in Flutter, a technology that has already proven its worth in rich application development. For business, Flutter has many advantages. The most significant are time and budget savings, high development speed. In our experience, the framework allows you to optimize the development time by up to 40%. Visually and mechanically, Flutter is no different from a native application. Therefore, users will not notice the difference.

Image
Image

Nikita Spiryanov Head of Flutter Development at FriFlex

Flutter has a rich toolkit: it is possible to create an interesting UI (user interface), make animations simply and quickly. Another plus is effective teamwork. All Flutter developers work with a single codebase, which means that more people who understand the project can conduct a code review (a team process of working to improve the quality of the code).

We decided to make a cross-platform application on Flutter. Where to begin?

Let's imagine that you have decided on the technology and decided to make a cross-platform application on Flutter. Where to start the implementation of this project?

Define business objectives

Image
Image

Peter Chernyshev CEO FriFlex

Before development, you need to determine what business tasks the mobile application will solve, what functionality will be needed to achieve them. Then writing custom scripts is the foundation for a technical assignment. It is also necessary to indicate in the TOR whether there is some kind of server part, for example, a website and an API (application programming interface) - this is important for maintaining the consistency of the company's digital products. If the company has no experience in this, then usually developers and systems analysts can help with this stage.

Form a team

If a mobile application is the main product of your business, then it is advisable to have at least some specialists within the company. It will take additional time to collect them. But if mobile development is not the main business project, then it is easier to find a reliable partner and outsource the development.

Highlight development stages and follow them

First, you need to draw up a roadmap, or a plan for creating a product with information about the purpose of the application, its users and strategies for use. This document is created with the participation of the product manager - a person who knows the product being created well. The roadmap will allow you to calculate how many developers will be required on a project in order to complete the work on time.

Often, when developing an application, the creation of an MVP ("Minimum Viable Product") becomes an intermediate stage. It is a ready-to-release product with minimal but sufficient features for early adopters. After creating the MVP, it becomes clear where to go next, what functions should be improved or added to the application.

Conduct quality testing

In addition to developers and designers, there should be analysts and testers on the team. They will just check how the finished application works, point out inaccuracies and errors. After that, you can present the application to users.

FriFlex has extensive experience in developing business applications on Flutter. FriFlex will help you draw up a technical task correctly, create a cool application and test it before launching. And if you want your IT team to be engaged in the development, but you think that it needs to be strengthened qualitatively or quantitatively, contact FriFlex for strengthening: company employees will be involved in solving complex problems on projects.

Recommended: