Вопросы и ответы

Нативная и кроссплатформенная разработка: как сделать правильный выбор?

У каждого подхода есть свои плюсы и минусы. Разберём их более подробно.

Нативная разработка (iOS, Android)

Плюсы

  1. При нативной разработке есть возможность использовать больше готовых сторонних решений при написании кода, например, готовые библиотеки от Яндекс.Карт, системы сбора аналитики, Firebase и т.д;
  2. Нативные приложения имеют полный доступ ко всем датчикам и частям операционной системы. Полностью используют все особенности операционной системы. Доступно взаимодействие со специфическими функциями устройства. Например: работа с высоконагруженными процессами, обработка видео, гироскоп, компас, модуль распознавания отпечатка пальца, функции шифрования данных в банковских технологиях;
  3. Нативные приложения разрабатываются на родных языках программирования для операционной системы (Swift для iOS, Kotlin для Android). Такие приложения легче поддерживать, потому что они созданы по правилам Apple и Google;
  4. Поддержка со стороны Google и Apple. После обновления прошивки телефона приложение не сломается. Если же при выходе новой версии ОС и нужна какая-то доработка приложения под новые требования, то такая доработка значительно проще, дешевле и быстрее происходит.
  5. Любые обновления Google или Apple можно предоставить сразу, буквально на следующий день после выхода очередной версии ОС. На Flutter и других кроссплатформенных фреймворках может потребоваться больше времени для того, чтобы начать работу с новыми функциями. Например, темная тема бета-версии iOS 13 на Flutter вышла немного позже основного релиза.
  6. Приложение работает быстрее, потому что операционная система и приложение «общаются» на одном языке. Иногда на 20%, иногда в 2 и более раз (ссылка).
  7. Нативный код использует меньше оперативной памяти, слабее нагружает процессор при работе с достаточно тяжелой анимацией, так как отсутствуют различные преобразования для показа изображения, которые имеются у Flutter.
  8. При работе нативных приложений расходуется меньше заряда аккумулятора;
  9. Проще найти команду для сопровождения проекта;
  10. Для QA (обеспечения качества) есть утвержденные гайдлайны по обеим платформам, что значительно упрощает тестирование интерфейса.

Минусы

  1. Стоимость. Код пишется и тестируется отдельно для каждой платформы iOS и Android. Хотя это не всегда так. Часто бывает, что итоговая стоимость разработки нативного и кроссплатформенного приложения практически одинаковая;
  2. Срок. Чаще всего (но опять же, не всегда), разработка нативного приложения займет больше времени, чем разработка кроссплатформенного решения.

Кроссплатформенная разработка (React Native, Flutter)

Плюсы

  1. Разработка быстрее, потому что большую часть кода не нужно писать отдельно для каждой платформы;
  2. Стоимость, как правило, ниже, потому что большую часть кода не нужно писать отдельно для каждой платформы.

Минусы

  1. Меньше возможностей кастомизации. В кроссплатформе свои не нативные элементы, из которых строится экран. Какая кастомизация в них заложена, ту и используют. В противном случае возникает необходимость писать свои элементы. С кроссплатформой приложение может потерять свою уникальности и индивидуальность.
  2. Один дизайн для обеих платформ;
  3. Необходимость использования сторонних решений при написании кода (причем высок риск, что эти решения либо содержат ошибки, исправления которых нужно ждать, либо вообще не поддерживаются), либо необходимость писать свои решения.
  4. Например, на том же Flutter есть модуль для Яндекс.Карт. Разработан он не Яндексом. Если в этом модуле необходимо будет что-то доработать, то это придется делать своими силами, что может быть достаточно трудозатратно.
  5. Если что-то есть только на одной платформе, то для работы этой функциональности нужно реализовать отдельный нативный модуль или ждать, пока это сделают сторонние разработчики и выложат в open source. Например, такое было с 3d touch в iPhone;
  6. При обновлении ОС нововведения появляются позже и к ним нельзя заранее подготовиться;
  7. Приложение работает медленнее. React Native иногда в 6-15 раз медленнее, Flutter на 20% или в 2-3 раза медленнее (ссылка);
  8. Могут возникнуть сложности при работе с вещами типа С++ библиотек, видео, обработкой большого объема данных в режиме реального времени и т.д.;
  9. Технологию могут забросить и перестать развивать;
  10. Меньше кандидатов на рынке;
  11. В случае нахождения некоторых багов, есть риск, что возможно придется отказаться от готового решения и писать самим с нуля, что будет дороже и дольше.
На какие этапы делится процесс разработки мобильного приложения?

Процесс разработки мобильного приложения длится на следующие этапы:

  1. Исследование и стратегия. У каждого приложения своя аудитория, поэтому первоначально мы выясняем основные группы целевых пользователей, их демографические данные, предпочтения, какими устройствами они чаще пользуются. А главное их ключевую проблему, которую и будем решать.Выбор стратегии монетизации (если она требуется). Возможные варианты: покупки в приложении, реклама в приложении, платные приложения (премиум-аккаунты).
  2. Дизайн. Наше кредо: дизайн должен работать! А работать он будет только в том случае, если основан на аналитических данных, собранных на предыдущем этапе. Хотя шрифты и цветовые сочетания мы тоже любим подбирать, ведь продукт должен нравиться еще и визуально.
  3. Разработка. Включается еще на этапе дизайна. Так мы лучше реализуем пользовательские сценарии, идеи и инициативы, которые были предложены на старте проекта.
  4. Ручное и автоматическое тестирование. Выявляем и исправляем все баги ПО до релиза в магазинах приложений. С помощью арсенала тестов, ключевых аналитических данных, методов мониторинга и прогнозирования сценариев повышаем безопасность приложения, а также комфорт использования на мобильных устройствах всех видов. Можете быть уверены в том, что ваш продукт будет работать в соответствии с вашими потребностями и требованиями каждого сценария. Публикация в магазинах приложений.
  5. Поддержка и продвижение. Собираем обратную связь и дорабатываем проект, если это необходимо. Специалисты по маркетингу работают над оптимизацией приложений и разрабатывают рекламные стратегии на Москву, Россию или весь мир.

Этапы не изолированы, команды разных департаментов постоянно взаимодействуют друг с другом.

Сколько времени и денег нужно на создание мобильного приложения?

Разработка ведется на заказ, и каждое мобильное приложение уникально. Поэтому и стоимость услуги варьируется в широком диапазоне. Она зависит от функциональности, количества экранов, объема необходимых исследований, документации и сопровождения. Посмотрите приблизительные цены на услуги в прайсе, а потом напишите нам, чтобы мы сориентировали вас по стоимости создания приложения с учетом всех требований. Консультация бесплатна. После нее вы сможете принять решение, какой именно продукт вам нужен.

Осуществляете ли вы релиз продукта в магазины приложений?

Да, мы полностью берем на себя публикацию приложений:
- подготовка сборок
- оформление карточек
- прохождение модерации

 

Работаем с App Store, Google Play и российскими сторами.

Зачем нужно тестирование приложений?

Тестирование необходимо для:

- выявления ошибок до выхода продукта на рынок

- снижения рисков сбоев и негативных отзывов

- обеспечения стабильной работы на разных устройствах

- защиты данных пользователей

 

Это напрямую влияет на репутацию продукта и экономит бюджет на исправления после релиза.

Какие технологии вы используете?

Для мобильной разработки:

- iOS — Swift

- Android — Kotlin

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

- Reract native, Kotlin Multiplatform

 

Также используем:

- backend: (Ruby, Node.js и др.)

- базы данных: PostgreSQL, MongoDB

- облака: AWS / Yandex Cloud

- CI/CD и DevOps-инструменты

 

Подбираем стек индивидуально под задачи проекта.

Беретесь ли вы за доработку чужого проекта?

Да, берем.

Процесс:

1. Аудит проекта (код, архитектура, UX)

2. Оценка рисков и объема работ

3. Формирование плана доработок

4. Реализация и поддержка

 

Важно: мы беремся только за проекты, где можем гарантировать качество результата.

Какие платформы вы поддерживаете?

Мы разрабатываем решения для:
- iOS и Android (нативные и кроссплатформенные приложения)
- Web-приложения и админ-панели
- Backend-системы и API

 

При необходимости создаём экосистему: мобильное приложение + сервер + интеграции.

Сколько времени занимает разработка?

Сроки зависят от сложности проекта:

- MVP: 2–4 месяца
- Средний продукт: 4–8 месяцев
- Сложные системы: от 8 месяцев

 

После обсуждения задач мы даём детальную оценку с этапами и контрольными точками.

Как происходит процесс разработки?

Работаем по прозрачному процессу:

1. Аналитика и постановка задач
2. Проектирование (UX/UI и архитектура)
3. Разработка
4. Тестирование
5. Релиз
6. Поддержка и развитие

 

Клиент участвует на каждом этапе и получает регулярные отчёты.

Предоставляете ли вы поддержку после релиза?

Да, мы предоставляем поддержку после релиза:

- исправление ошибок
- мониторинг стабильности
- обновления под новые версии ОС
- развитие функционала

 

Формат — по SLA или почасовой поддержке.

Какие услуги входят в гарантийное обслуживание?

В гарантию входит:

- исправление ошибок, выявленных после запуска

- стабилизация работы системы

 

Не входит:

- доработка функционала

- изменения из-за обновлений ОС

 

При необходимости предлагаем поддержку по SLA.

Можно ли интегрировать приложение с внешними системами?

Да, мы интегрируем приложения с различными системами:

- CRM (Bitrix24, Salesforce и др.)
- ERP
- платёжные системы
- сторонние API и сервисы

 

Подбираем архитектуру так, чтобы интеграции были устойчивыми и масштабируемыми.

Предоставляете ли вы документацию?

Да, мы предоставляем документацию:

- техническую (API, архитектура)
- пользовательскую (при необходимости)
- инструкции по поддержке

 

Это упрощает дальнейшее развитие продукта.

Делаете ли вы дизайн?

Да, у нас есть собственная команда UX/UI-дизайнеров.

Мы:
- анализируем пользователей
- проектируем удобные сценарии
- создаём современный интерфейс

 

Делаем дизайн не просто “красивый”, а решаем бизнес-задачи.

Можно ли масштабировать приложение?

Да, мы изначально проектируем решения с учётом масштабирования:

- модульная архитектура
- облачная инфраструктура
- возможность увеличения нагрузки без переписывания системы

 

Это позволяет продукту расти вместе с бизнесом.

Кому принадлежат права на продукт?

Все права на разработанный продукт полностью передаются заказчику после подписания актов выполненных работ и оплаты.

 

Мы фиксируем это в договоре.

Работаете ли вы с физическими лицами?

Мы работаем преимущественно с юридическими лицами. Если у вас есть проект как у физического лица — оставьте заявку, мы подскажем возможные варианты сотрудничества.

Указываете ли вы НДС в договоре?

Да, мы работаем с НДС и указываем его в договоре.
При необходимости можем предложить варианты работы без НДС в зависимости от структуры сделки.

Обеспечиваете ли вы безопасность данных?

Да, безопасность — приоритет:

- шифрование данных (в передаче и хранении)
- защита API
- контроль доступа
- соответствие требованиям GDPR / 152-ФЗ

 

Также проводим аудит безопасности при необходимости.

Как часто нужно выпускать релизы и кто это будет делать?

Важно поддерживать актуальность версии мобильного приложения. Пользователей может насторожить долгое отсутствие обновлений, что может негативно сказаться на количестве скачиваний. Как правило, оптимальным является выпуск обновления 1–2 раза в месяц. В зависимости от особенностей проекта, эта цифра может меняться в большую сторону. Если нужна разработка новых функций, то команда поддержки будет состоять минимум из 3 человек.

Есть ли какая-то отчетность по выполненным работам?

Техническая поддержка является полноценной услугой, подразумевающей регулярную отчетность. В отчете подробно расписаны все выполненные работы по сопровождению и техническому обслуживанию проекта, а также трудозатраты, ушедшие на выполнение каждой задачи, оценочные часы и стоимость — с комментариями от команды поддержки.

Как начать работу?

Чтобы начать работу:

1. Оставьте заявку на сайте
2. Мы свяжемся с вами для уточнения задачи
3. Подготовим предложение и оценку

 

Обычно первичная консультация занимает 1–2 рабочих дня.

Зачем нужна поддержка мобильных приложений?

Разработка не ограничивается публикацией приложений в сторах. Приложение нужно постоянно развивать и дорабатывать, необходимо внедрять новый функционал в соответствии с запросами пользователей. Кроме того, постоянная поддержка улучшает безопасность мобильного приложения, адаптируя его под новые версии ОС и новые устройства.

Что делать, если закончится пакет инцидентов, а баг нужно срочно исправить?

Если вы исчерпали лимит коленного пакета инцидента, вы можете обратиться к нам за разовыми работами по Time & Materials в рамках дополнительного соглашения. После согласования фронта работ мы в экстренном порядке приступим к устранению возникших ошибок, мешающих нормальному функционированию проекта.

Что будет, если причиной возникновения бага станет работа команды поддержки?

Мы переносим все изменения на серверы заказчика только после тщательного локального тестирования, имея у себя необходимые резервные копии, и только после полного одобрения работы заказчиком. Однако, если все-таки причиной появления багов стала работа нашей команды поддержки, мы оперативно их устраним и вернем проект в рабочее состояние — совершенно бесплатно.

Вы разрабатываете полностью адаптивные сайты заточенные под SEO?

Все созданные нами сайты адаптированы под мобильные устройства, имеют уникальный дизайн, микроразметки schema и opengraph, возможность вносить метаинформацию, редактировать карту сайта и файл robots.txt, настройку редиректов, чпу, хлебные крошки, возможность указания канонических страниц и другие возможности для SEO-продвижения.

Имеют ли ваши сайты интеграции с популярными сервисами?

Разработанные нами сайты и веб-приложения обладают стандартизированным API с учетом возможностей масштабирования и позволяют без всяких затруднений подключаться к другим сервисам или добавлять новую бизнес-логику. Согласно ТЗ заказчика мы обеспечиваем удобную интеграцию с другими продуктами без дополнительной нагрузки на сайт или веб-приложения, такими как 1С, CRM и ERP системы, системы веб и мобильной аналитики, маркетинговыми инструментами, системами учета, социальными сетями и многим другим.

У меня есть мобильное приложение, вы можете его сконвертировать в PWA?

Да, конечно, для создания PWA в случае, если у клиента уже было мобильное приложение, мы используем базу данных, бэкенд и API клиента. Прорабатываем UI/UX интерфейс сохраняя привычный для клиентов пользовательский опыт.

Оказываете ли вы поддержку и осуществляете ли вы доработки уже существующих сайтов?

Согласно договору, мы оказываем гарантийную техподдержку сайта или веб-приложения первые полгода после сдачи проекта заказчику. Далее, если вам нужна будет постоянная техподдержка или же у вас уже есть готовый сайт или веб-приложение и вам нужны доработки, заключаем отдельный договор на осуществление техподдержки проекта.

Что если мне не понравится?

На этапе согласования ТЗ выясняем все пожелания и вносим коррективы. На каждом этапе у вас есть заранее оговоренное в договоре количество правок. Вы сами утверждаете каждый этап проделанных работ, это исключает «кота в мешке». Устраняем все выявленные вами недочеты до окончательной сдачи проекта.

Что такое многофункциональная система мониторинга?

Многофункциональная система мониторинга — это инструмент, который позволяет отслеживать состояние вашего приложения и сервера в реальном времени. Она предоставляет информацию о работе сервера, доступности приложения, нагрузке на систему и других параметрах.

Какие данные можно отслеживать с помощью многофункциональной системы мониторинга?

С помощью многофункциональной системы мониторинга можно отслеживать данные о доступности приложения, времени отклика сервера, нагрузке на систему, использовании ресурсов (память, процессор, диск), ошибках и предупреждениях, а также о других параметрах, зависящих от конкретной системы мониторинга.

Какие преимущества даёт использование многофункциональной системы мониторинга?

Использование многофункциональной системы мониторинга позволяет оперативно реагировать на проблемы с приложением или сервером, предотвращать сбои в работе системы, оптимизировать нагрузку на сервер, контролировать использование ресурсов, получать уведомления об ошибках и предупреждениях, а также анализировать данные о работе системы для улучшения её производительности.

Можно ли отслеживать состояние приложения и сервера на мобильном устройстве?

Да, многофункциональная система мониторинга позволяет отслеживать состояние приложения и сервера на мобильных устройствах. Это удобно для пользователей, которые хотят получать информацию о работе системы в любой точке мира.

Можно ли заказать только часть услуг?

Да, можно.

Мы можем подключиться на любом этапе:
- разработка
- дизайн
- аудит проекта
- тестирование
- доработка

 

Формат сотрудничества подбираем под задачу.

Мы используем файлы cookie и собираем технические данные (например, IP-адрес и местоположение) для корректной работы сайта и повышения качества наших услуг. Продолжая пользоваться сайтом, вы даете согласие на использование этих технологий на условиях, изложенных в Политике об обработке и защите персональных данных
Хорошо