Секреты разработки мобильных приложений

Компания Mauris
Компания Mauris 30 марта 2018, 15:05
Mauris — команда специалистов в сфере IT, которая разработала и внедрила десятки программных решений в частные фирмы и государственные организации. Мы не боимся трудностей и с радостью беремся за интересный сложный проект. К нам обращаются клиенты со всего мира: Германия, Турция, Швейцария, Греция, Великобритания, Россия, Украина.
Блог
Это запись из пользовательского блога.
Она выражает личное мнение автора, которое может не совпадать с мнением редакции.
Секреты разработки мобильных приложений

В настоящее время 9 из 10 потенциальных клиентов обращаются с запросом разработки приложения сразу под 2 платформы - iOS и Android. Это вполне логично, ведь упомянутые платформы в сумме занимают более 95% рынка, и экономически целесообразно разрабатывать мобильное приложение именно под эти платформы.

Во время общения с заказчиками техническому директору компании Mauris Владимиру Бондаренко часто приходится объяснять, в чем разница разработки под каждую из платформ и почему это два абсолютно разных продукта. Многие считают, что программисты разрабатывают одно приложение, которое потом регистрируют в маркетах App Store и Google Play. В некоторых случаях это действительно так, но далеко не всегда. Владимир рассказал об основных подходах к разработке мобильных приложений.

Их всего четыре:

Конструктор приложений - готовый сервис, который позволяет за 30 минут собрать мобильное приложение.

У этого подхода два плюса: скорость и стоимость. В результате вы получите шаблонное не брендированное приложение с ограниченным функционалом без возможности адаптировать его под себя. При таком подходе к разработке более 50% всех ваших пожеланий невозможно будет реализовать.

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

Преимущества:

  • Скорость работы. Интерфейс кроссплатформенных приложений отзывчив.
  • Время разработки. За счет единого решения под 2 платформы время разработки существенно сокращается.
  • Техническая поддержка платформ.

Недостатки:

  • Трудно найти опытного подрядчика. Найти опытных разработчиков в, например, MonoTouch будет проблематичнее, нежели специалистов для нативных SDK.
  • Удобство отладки. В Titanium предоставляется возможность отлаживать только свой код, и нельзя получить доступ в исходниках самого фреймфорка, что затрудняет поиск проблем. Что касается MonoTouch, то у многих разработчиков при отладке и запуске приложения возникают постоянные проблемы.

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

React Native - технология от Facebook, которая использует нативные компоненты под каждую из платформ, а также имеет общую программную логику. Такой подход позволяет получить быстродействие нативной разработки с экономией времени за счет реализации общей логики.

Преимущества:

  • Повторное использование кода. Кроме общего набора исходных кодов между несколькими платформами, React Native дает возможность повторно использовать код с веб-приложением.
  • Платформа: «All inclusive». React Native включает: React; дополнительные средства для Android и iOS; Flexbox для стилизации интерфейса пользователей; разнообразные виджеты, анимации и многое другое.
  • Интегрируемые нативные компоненты.

Недостатки:

  • Ограниченный API. Хоть React Native и поддерживает огромное количество API-интерфейсов, все еще существует потребность в использовании других API через встроенные модули.
  • Различия платформ Android и iOS.
  • Относительно низкая производительность. Если вы планируете разрабатывать сложное приложение, React Native вам не подойдет.

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

Нативная разработка - разработка двух независимых приложений под платформы iOS и Android.

Преимущества:

  • Удобство разработки и отладки. В целом разработка нативных приложений намного удобнее, чем, например, разработка кроссплатформенных. Это связано с тем, что в нативной разработке отсутствуют дополнительные прослойки между кодом приложения и исполняемым файлом и, в целом, инструменты натива более развиты.
  • Наличие документации и регулярной технической поддержки
  • Скорость работы. Нативные приложения обеспечивают высокую скорость работы и производительность.
  • Юзабилити. Нативные приложения предоставляют возможность реализовать интерфейс и общее поведение программы наиболее естественным для данной платформы способом.

Недостатки:

  • Охват платформ.
  • Высокая стоимость разработки.
  • Трудно найти опытного подрядчика. В целом, найти хорошего разработчика на Java или Objective-C достаточно сложно ввиду специфичности данной области и более высокого порога входа в технологию.

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

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

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

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

Поделиться