Блог

Преимущества кроссплатформенной мобильной разработки

Как писать один код мобильного приложения для использования под iOS и Android

Срок реализации – 6 месяцев.

Задачи

  1. Разработать кроссплатформенное мобильное приложение (агрегатор в секторе e-commerce)
  2. Упростить техническую поддержку в будущем
  3. Публикация в сторы

Стэк

Flutter

Решение

Кроссплатформенная разработка

Несомненный, и определяющий в рамках данного проекта плюс кроссплатформенной разработки состоял в отсутствии необходимости делать двойную работу. Трудозатраты на написание кода значительно сокращаются, ведь база приложения единая для всех платформ - iOS и Android.
Как правило, приложения, написанные на Flutter одинаково выглядят на всех устройствах. Это можно сравнить с gamedev’ом - игры рисуются так, как задумано, и выглядят одинаково на всех устройствах. Так и здесь - для отрисовки приложения используется свой движок рендера, по сути не задействуя отдельные компоненты. Однако при желании, флаттер позволяет изменять стили для различных платформ: Material design или Cupertino для Android и iOS соответственно.

Простота поддержки

Использование flutter упростило методику поиска и исправления дефектов, в том числе верстки. Если на каком-то экране есть ошибка - ее нужно исправить лишь в одном месте, и проблема будет решена сразу для всех поддерживаемых устройств.
В процессе кроссплатформенной разработки функционал пишется на одном языке. Само собой, что иконки, splash-скрины и т.п. надо добавлять отдельно в разные папки iOS/Android.

Публикация в маркеты

Процесс публикации под каждую платформу свой: у Google play маркета одни правила загрузки, у App Store - немного другие. Основные технические требования примерно схожие, однако профиль разработчика для Apple, например, платный. Об этом нужно помнить и закладывать время и бюджет на организацию процесса. Обновления загружаются путем формирования нового билда приложения и загрузки в маркет.
Как правило, сложно оценить масштабы будущего мобильного приложения на первоначальном этапе. Без макетов всех экранов и состояний не удается учесть все нюансы проекта. Выбор кроссплатформенной разработки позволяет компенсировать часть рисков. Тем не менее, нативные приложения обладают своими преимуществами, поэтому решение строго индивидуально.
Роман
Senior, mobile app developer
Mobile App Dart Flutter E-commerce