как создать мультиплатформенное приложение

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

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

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

Содержание

Зачем создавать мобильное приложение

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

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

как создать мультиплатформенное приложение. lazy placeholder. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-lazy placeholder. картинка как создать мультиплатформенное приложение. картинка lazy placeholder.Время использования браузера и приложений на мобильных телефонах. Источник

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

как создать мультиплатформенное приложение. lazy placeholder. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-lazy placeholder. картинка как создать мультиплатформенное приложение. картинка lazy placeholder.Количество приложений на одном телефоне. Источник

Когда можно создать приложение самостоятельно

Самостоятельно можно создать небольшое и простое приложение, которое закроет потребность ваших существующих клиентов. Это поможет сформировать лояльность: вы покажете, что компания старается стать еще удобнее.

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

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

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

Способы создания приложений

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

Разработка c программистом

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

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

Zero-code конструкторы приложений

Для тех, кто не умеет программировать, на рынке есть сервисы для самостоятельного создания приложений — так называемые no-code или zero-code сервисы. Подборку таких сервисов с описанием и ценами вы получите дальше в статье.

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

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

Как создать мобильное приложение: этапы работы

Условно разделим самостоятельное создание приложения на четыре этапа:

Подготовка

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

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

Разработка

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

Затем соберите функции в общий сценарий приложения. Для этого пригодится метод сторифреймов: это черновые экраны, из которых будет состоять ваше приложение. В них нет ничего, кроме текста. Грубо говоря, это диалог пользователя и приложения: приложение предлагает — пользователь реагирует — приложение отвечает, и так далее. Их можно собрать в сервисах вроде miro, Figma, Sketch, или использовать любой инструмент для создания майнд-карт из нашей подборки.

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

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

Что еще учесть, чтобы создать хорошее приложение:

А еще в идеале приложение должно немного весить, не раздражать рекламой и уведомлениями. Статистика ниже — основные причины удаления приложений.

как создать мультиплатформенное приложение. lazy placeholder. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-lazy placeholder. картинка как создать мультиплатформенное приложение. картинка lazy placeholder.Топ причин, по которым люди удаляют приложения с телефона. Источник

Итог разработки: первая рабочая версия приложения.

Запуск и тестирование

Перед тем, как выкатывать приложение в общий доступ, его нужно протестировать и устранить все найденные баги и ошибки в логике. Самый простой вариант — установить его на телефоны команды и активно использовать хотя бы несколько дней. Лучше всего привлечь фокус-группу — людей со стороны, которые подходят под описание ЦА и пока незнакомы с проектом.

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

Итог запуска и тестирования: бета-версия приложения, проверенная на группе пользователей.

Продвижение и поддержка

Готовое оттестированное приложение можно запускать в промоушен. Если есть прямая ссылка для скачивания — запускайте рекламные кампании с ней. Предлагайте приложение посетителям сайта, анонсируйте его выход в соцсетях, сделайте рассылки по базе постоянных клиентов. Выложите в магазин приложений — Google Play или AppStore.

В рекламных системах есть специальные форматы кампаний для продвижения мобильных приложений. Собрала для вас ссылки на информацию по таким кампаниям в разных системах:

Итог продвижения и поддержки: приложение вышло на рынок, при необходимости вы его поддерживаете и дорабатываете.

Сервисы для создания мобильных приложений на Android и iOS

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

Что учесть при выборе сервиса:

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

Draftbit

Язык: английский

Платформы: Android, iOS

Тариф: 449 долларов за год, попробовать можно бесплатно.

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

На старте вам предложат настроить начальный шаблон: например, будет ли ваше приложение наполнено контентом или товарами, устроено в виде галереи, списка или ленты. Доступны интеграции — встроенные и через REST API, так что можно подключать к приложению источники данных и другие сервисы.

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

Adalo

Язык: английский

Платформы: Android, iOS

Тариф: 50 долларов в месяц, можно попробовать бесплатно.

Есть интеграция с Zapier — сервисом, который позволяет соединить ваше приложение с 1500 других сервисов. Например, настроить интеграцию с Trello или SendPulse, вашей CRM или платежной системой. Есть также возможностью подключать источники данных.

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

Bravo Studio

Язык: английский

Платформы: Android, iOS

Тариф: три скачивания пакетов в неделю на бесплатном тарифе. Чтобы убрать лимит и лого сервиса из готового продукта — 49 евро в месяц.

Этот сервис непохож на остальные подборки. Это не конструктор, а конвертер — он превращает макеты, сделанные в Figma или Adobe XD, в нативные приложения для iOS и Android. Каждый элемент макета размечается специальным тегом, и с их помощью сервис переводит макет в код. Внешние источники данных и сторонние сервисы подключаются к готовому приложению через REST API.

В базе знаний сервиса есть подробные гайдлайны для загрузки в App Store и Google Play, а также инструкции на случай отказа в публикации и для поддержки опубликованного приложения.

Kodika

Язык: английский

Платформы: iOS

Тариф: 30 евро в месяц, есть бесплатный тариф для тестирования.

Инструмент для создания iOS-приложений с помощью drag&drop. Самое приятное здесь — функция публикации в App Store, которая позволяет избежать самостоятельной загрузки. Поддерживает REST API.

Mobincube

Язык: русский (автоматический перевод).

Платформы: iOS, Android.

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

Единственный сервис в подборке, который позволяет создавать готовые пакеты под Android и App Store бесплатно. Конечно, есть ограничения: будет реклама от сервиса, а месячное число уникальных юзеров не должно превышать двух тысяч.

Откройте для себя чат-бота

Выстраивайте автоворонки продаж и отвечайте на вопросы пользователей с помощью чат-бота в Facebook, VK и Telegram.

AppsBuilder

Язык: английский.

Платформы: iOS, Android.

Тариф: 24 евро в месяц. Не бесплатного тарифа, есть небольшой триальный период.

Еще один drag&drop конструктор в нашей подборке. Приемлемый тариф по сравнению с конкурентами, но не очень современный интерфейс. Есть встроенные интеграции с соцсетями, технологией RSS, сервисами Facebook и Google, конструкторами форм и другими инструментами.

Apps Global

Язык: русский.

Платформы: iOS, Android.

Тариф: 9 долларов в месяц при ограниченном числе элементов в конструкторе. Полный доступ от 15 долларов. Есть тестовый период на 7 дней.

Конструктор, который позволяет не только создать приложение, но и управлять им и получать аналитические данные. Удобно, что сервис — не просто русифицированная калька зарубежного аналога. Здесь можно, например, подключить к приложению привычные платежные системы: «Сбербанк», «Яндекс», Qiwi.

Альтернатива мобильным приложениям — чат-бот

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

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

Вот три кейса по чат-ботам, которые решают реальные бизнес-задачи. Все сделаны в конструкторе чат-ботов SendPulse.

Мы собрали целый раздел с примерами чат-ботов. Там можно изучить функционал и протестировать каждого бота.

Боты, сделанные в SendPulse, легко масштабируется. Запустить можно малыша, в котором есть FAQ и ссылка на сайт, а потом превратить его в полноценный магазин с системой привлечения и удержания клиентов, связать его с CRM и email рассылками. Регистрируйтесь и создавайте до трех чат-ботов на бесплатном тарифе.

Создание приложений: что стоит запомнить

Чтобы создать мобильное приложение самостоятельно, необязательно быть разработчиком или нанимать специалистов. Нужно четко определить целевую аудиторию, задачи приложения и свои возможности, выбрать подходящий zero-code конструктор и следовать этапам разработки.

А для автоматизации вашего маркетинга регистрируйтесь в SendPulse. Мы объединили много инструментов, которые нужны бизнесу: рассылки по разным каналам, чат-боты в мессенджерах, конструктор лендингов и даже CRM систему.

Источник

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

как создать мультиплатформенное приложение. caspar camille rubin XA0v5hbb7HY unsplash 1280x1000 1. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-caspar camille rubin XA0v5hbb7HY unsplash 1280x1000 1. картинка как создать мультиплатформенное приложение. картинка caspar camille rubin XA0v5hbb7HY unsplash 1280x1000 1.

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

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

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

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

Проблема архитектуры в кроссплатформах

В мире кроссплатформы все фреймворки примерно одинаковы по своей структуре. В основе всего — целевая платформа (iOS, Android, etc.), для которой ведется разработка, и слой абстракции, который обещают сделать быстро, дешево и красиво, а между ними мост, соединяющий эти две сущности. Слой абстракции в большинстве своем представлен связкой из JS и CSS (частично или полностью).

как создать мультиплатформенное приложение. image1 I2NgjiE min. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image1 I2NgjiE min. картинка как создать мультиплатформенное приложение. картинка image1 I2NgjiE min.

У такой архитектуры есть типичные проблемы.

Частично они обусловлены тем, что слой абстракции, условно говоря, пытается усидеть на двух стульях — с переменным успехом. Отсюда и сложности: на каждой отдельно взятой платформе приложение отображается и ведет себя по-разному. Иногда это не проблема, но бывают случаи, когда уникальный дизайн и поведение на обеих платформах являются дополнительным business value.

В пример можно привести приложение Reflectly. Изначально оно было написано на React Native, впервые вышло на iOS, а позже была попытка выйти на платформу Android.

Запуск приложения в Android преподнес неприятный сюрприз. В итоге его полностью переписали на Flutter.

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

Асинхронность и производительность моста, соединяющего две платформы. Все, что вы хотите от платформы (рендеринг, вызов нативных методов), вам сначала нужно сериализовать в строку, передать, по ту сторону десериализовать и только потом получить ожидаемый результат. Такие действия явно не увеличат производительность.

Работоспособность и поддержка плагинов. Кроссплатформа не так распространена, как классический фронтенд. Нередко плагин выпускается в Open Source, и практически сразу прекращается его поддержка, так как существующая версия решает проблемы разработчика, а за большее никто не будет платить. Еще хуже, когда прекращается не только поддержка, но и реагирование на pull requests…

Миф о том, что любого web-разработчика можно быстро переквалифицировать в мобильщика с помощью «магического фреймворка Х». Все выглядит похоже: на Web — CSS + JS, на кроссплатформе — то же самое. Должно работать. Но не учитывается факт, что к имеющимся знаниям требуется быстро прибавить понимание как минимум двух платформ (iOS и Android), с которыми разработчик раньше не сталкивался. Отдельным бонусом идет набивка руки в специфических тонкостях, связанных со взаимодействиями внутри всего этого зоопарка.

Из-за всех этих нюансов кроссплатформенную разработку троллят вот так:

как создать мультиплатформенное приложение. image5 Iq2Ol1R min. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image5 Iq2Ol1R min. картинка как создать мультиплатформенное приложение. картинка image5 Iq2Ol1R min.

Начнем знакомство с фреймворков, основанных на WebView.

Cordova

Одним из первых кроссплатформенных фреймворков стал Cordova (бывш. PhoneGap). Первый релиз состоялся в 2009 году. Изначально разрабатывался компанией Nitobi, купленной Adobe. В результате поглощения исходный код PhoneGap был передан Apache Foundation.

как создать мультиплатформенное приложение. image4 ekSCAVR. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image4 ekSCAVR. картинка как создать мультиплатформенное приложение. картинка image4 ekSCAVR.

Из официальной архитектурной схемы видно, что основой рендеринга выступает обычный WebView — то есть обычный браузер. Несмотря на то что это самый давний фреймворк, предлагает он лишь джентльменский набор из плагинов и связки API для обеспечения их взаимодействия. Какого-то специфического набора инструментов у него нет. Есть перечень сервисов и библиотек, который предлагается на главной странице, например Onsen UI — UI-библиотека.

Developer experience довольно неоднозначный: фактически, как ты его себе организуешь, так и будет. Можно на jQuery все писать и обновлять страницу с F5, а можно собрать себе уютный и привычный набор библиотек и пользоваться уже существующими решениями для hot reload.

Дебаг происходит в консоли браузера. Дебаг на устройстве — через подключение из Safari к WebView, запущенном на iOS.

Также есть удобный механизм темплейтов, который позволяет генерить проект из готовых сторонних бойлерплейтов. Например, cordova-template-framework7-vue-webpack.

Ionic

На основе Cordova в 2013 году был выпущен Ionic. Со временем Cordova заменили Capacitor с сохранением совместимости API, чтобы осталась работоспособной вся существующая база компонентов.

Имеет свою базу UI-компонентов и позволяет реализовывать бизнес-логику на любом фреймворке из могучей тройки (до версии 4 была возможность использовать только Angular). Есть возможность оплатить энтерпрайз-поддержку. В остальном все сказанное о Cordova относится и к Ionic. Дебаг в консоли браузера, хот-релоад от фреймворка, работает внутри WebView.

Appcelerator наименее известен (0 упоминаний в вакансиях на DOU), использует свой собственный фреймворк Alloy. Существует также версия с поддержкой Angular, но она все еще в бете, а движение в репозитории остановилось в 2108 году… Знать о нем можно, а изучать практического смысла нет 🙂

Xamarin

Фреймворк с длинной историей. Изначально развивался отдельно, позже был приобретен компанией «Майкрософт». Поскольку он «не на JS», то не очень популярен.

В отличие от JS-фреймворков код на C# компилируется, и это позволяет ему работать чуть быстрее. Также у него есть два варианта архитектуры.

как создать мультиплатформенное приложение. image7 92AQcoQ. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image7 92AQcoQ. картинка как создать мультиплатформенное приложение. картинка image7 92AQcoQ.

Здесь UI-слой разрабатывается отдельно для обеих платформ, а бизнес-логика общая. Этот вариант будет интересен, если есть желание сделать максимально нативное приложение с точки зрения UI (с учетом всех гайдлайнов), а на дублировании бизнес-логики сэкономить путем повторного использования существующих наработок. В то же время требует наличия в команде разработчиков, способных написать UI-часть для обеих платформ отдельно.

как создать мультиплатформенное приложение. image6 IP4F2NU. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image6 IP4F2NU. картинка как создать мультиплатформенное приложение. картинка image6 IP4F2NU.

Продолжение развития Xamarin, но уже с покрытием UI, не требующим написания по отдельности.

Дебагер, хот-релоад (только для верстки), лейаут-эдитор — все имеется в наличии. Однако язык разработки и относительная дороговизна инструментов разработки делает Xamarin малораспространенным за пределами экосистемы Microsoft.

NativeScript

Фреймворк выпущен в 2014 году. На данный момент из коробки предлагается писать на Angular или Vue. За долгие годы развития накопил достаточно большой арсенал инструментов разработчика: готовый набор UI-компонентов, собственную песочницу, маркетплейс компонентов, приложение для быстрого запуска превью написанного кода на устройстве, приложение, где можно увидеть вживую работу компонентов. Для дебага можно использовать или консоль браузера, или предоставляемый разработчиками плагин для VS Code.

Имеет интересную архитектуру — API платформы через рефлексию пробрасываются на сторону JavaScript.

как создать мультиплатформенное приложение. image9 98AK7Kl. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image9 98AK7Kl. картинка как создать мультиплатформенное приложение. картинка image9 98AK7Kl.

На практике работа с API-платформы выглядит так, как будто вы пишете, например, на Java, только через призму JS. В повседневной же работе используется набор встроенных layout-компонентов и CSS-подобный синтаксис для раскраски. При изменении стилей достаточно неплохо работает hot reload.

На выходе имеем бандл JS-кода, выполненный в JSCore (iOS) или V8 (Android) и работающий через мост с платформой.

React Native

Первый релиз состоялся в 2015 году. Практически единственный из кроссплатформенных фреймворков JS, который не дает нам выбора и предлагает только React как фреймворк для разработки. Его появление подтверждает, что React можно скормить любой движок для рендеринга виртуального дома дерева. Первая имплементация этого подхода была результатом хакатона и в итоге продолжила свое развитие в Open Source. На данный момент очень популярен не в последнюю очередь благодаря «Реакту» для Web.

Общая архитектура очень похожа на NativeScript, только мост на 100 метров выше по реке. Нативные плагины пишутся на стороне платформы, а через мост передаются лишь параметры. В промежутке между JS и платформой находится Yoga — кроссплатформенный движок, который реализует flex-box layout на целевой платформе.

как создать мультиплатформенное приложение. image8 APZSoJz. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image8 APZSoJz. картинка как создать мультиплатформенное приложение. картинка image8 APZSoJz.

Технически React Native очень похож на то, что frontend-разработчики привыкли видеть на Web.

Фреймворк активно развивается: релизы появляются каждые 3–6 месяцев. В версии 0.61.0 обновили механизм hot reload, который позволяет работать более производительно. Не так давно была выпущена версия 0.62.0, которая добавила интеграцию fbflipper из коробки. Надеюсь, эта инициатива получит достойное продолжение, так как до сих пор арсенал инструментов разработчика был похож на лоскутное одеяло. Изначально предлагается только консоль браузера, можно использовать также react-native-debugger или reactotron, которые дают дополнительные инструменты при разработке (инспекция Redux, MobX, Apollo Cache).

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

Последними рассмотрим фреймворки native-like. Отличает их то, что они совсем не используют встроенных виджетов. Вместо этого рисуют все своими силами. Одним из новичков в этой категории является Flutter. В процессе подготовки статьи я с удивлением обнаружил, что с 2011 года на Python развивается аналогичный фреймворк, реализующий такую же концепцию, — Kyvi. Увы, но этому фреймворку не хватает финансирования и комьюнити. Например, имплементация Material UI уже 3 года не развивается, а инициатива была перехвачена нашим соотечественником.

Flutter

Первый релиз состоялся в конце 2018 года. Платформа достаточно молодая, но она активно развивается: ежеквартальные релизы, активное развитие языка Dart, богатый инструментарий разработчика, изумительный hot reload, онлайн-редактор для анимации, специализированная CI/CD — все это было доступно с первого дня релиза версии 1.0.

Особенностью архитектуры Flutter является то, что он сам рисует каждый пиксель, контролирует жесты и анимацию. Он не использует ОЕМ-виджеты, как это делает React Native. Вместо этого команда Flutter создала два набора виджетов для основных мобильных платформ: Material для Android и Cupertino для iOS. Таким образом, они заново отрисовали все UI-компоненты с обеих мобильных платформ, полностью повторив их поведение. Непосредственно с мобильной платформой (геолокация, звук, Bluetooth) взаимодействие происходит через Platform Channels.

как создать мультиплатформенное приложение. image11 Gzig4t1. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image11 Gzig4t1. картинка как создать мультиплатформенное приложение. картинка image11 Gzig4t1.

Благодаря такой архитектуре заявлена поддержка «всего что угодно», в теории. На практике хорошо поддерживаются iOS и Android. Активно развивается Web. Фактически успех на web-поприще определит дальнейшую популярность фреймворка во всем мире. На данный момент есть поддержка Web в бета-версии, и с каждым днем она становится все лучше. Одной из проблем является производительность. С флагом FLUTTER_WEB_USE_SKIA=true производительность существенно возрастает. Более подробный обзор Flutter доступен в моей предыдущей статье.

Относительная «молодость» платформы и широкий перечень поддерживаемых платформ, бывает, преподносит баги в неожиданных местах. Благодаря быстро растущему комьюнити на многие из них есть ишьюс на GitHub, в которых часто можно найти вариант обходного решения проблемы.

С этим фреймворком мне еще не довелось плотно познакомиться. На всякий случай я его установил и запустил. Не без проблем — из-за бага, который благополучно пофиксили в версии 5.14.2. В комментариях отпишитесь, если у вас есть опыт кроссплатформенной мобильной разработки на Qt.

Тренды

Для полноты картины приведу тренды на Stack Overflow:

как создать мультиплатформенное приложение. image10 MvBuNVR min. как создать мультиплатформенное приложение фото. как создать мультиплатформенное приложение-image10 MvBuNVR min. картинка как создать мультиплатформенное приложение. картинка image10 MvBuNVR min.

Муки выбора

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

Если вам нужно простейшее решение, чтобы текущий web-продукт поддержать мобильной платформой, вам подойдут PWA или Ioinc (с дистрибуцией через магазины).

Если вы только за Angular либо за React, а все остальное — «фу-фу-фу», если нет времени или желания разбираться, а нужно приложение на вчера, вы, скорее всего, остановите выбор на NativeScript в первом случае или на React Native во втором.

Стартапам придется выбирать между React Native и Flutter из-за их популярности и поддержки большими компаниями. Первый — это зрелый фреймворк с устоявшимися практиками разработки, богатством библиотек и большим комьюнити. Второй — молодой, быстрый и перспективный с богатым набором встроенных UI-компонентов и крутым developer experience.

Начинающим разработчикам или желающим попробовать что-то новое стоит обратить внимание на Flutter.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *