Для проекта “Переговорник” я решил выбрать для разработки фреймворк ionic. Мотивация у меня была такая:
Моим приложением удобнее пользоваться с экрана мобильного телефона, в пути, в метро и т.д. .Сейчас уже мало людей будут приходить, садится за комп и логинится и что то там делать — прошли те времена, все всё делают все на ходу. Конечно, есть серьезные приложения, и ими лучше заниматься за компом, но у меня не тот случай. Тут уже надо задумываться о следующей ступени — голосовых помошниках и виртуальной реальности, но сейчас разработка под них достаточно долга, а мобильники есть у всех, так же как и приложения на них.
Изначально ionic делался как удобная обертка для cordova phonegap — штуки, с помощью которой можно SPA(single page application) скомпилировать в приложение для нескольких платформ — Android, iOs, Windows Mobile(💀). То есть мы используем html,css,js — и cordova делает из них приложение с возможностью просмотра сайта как приложение. Плюс предоставляет доступ к нативному api для разных устройств — то есть можно пользоваться акселерометром, gps, нативными уведомлениями, bluetooth, камерой и еще много чем (по секрету скажу, что многие мобильные браузеры уже предоставляют сайтам многие из этих апи, но это отдельная история). Получается — разрабатываешь один раз — используется везде.
Есть конечно в этой системе и минусы. Поскольку в итоге получается экземпляр браузера с запущенным spa приложением внутри, он загружается медленнее некоторых нативных приложений. При загрузке куча ненужной фигни грузится в память. Также, в нем сложно сделать какие то игровые вещи с 3d графикой — естесственно, ведь запускается среда исполнения(браузер) в среде исполнения(операционная система) и в ней какой нибудь webgl …..для таких вещей нужна unity и иже с ним.
Но для моей идеи сейчас предоставленного функционала более чем достаточно.
Во вяском случае, благодаря ionic можно сделать еще и PWA — Progressive Web App — то есть такую штуку, которая и работает как сайт, если заходить на нее из браузера, и она может устанавливаться на телефон прямо с сайта. Google ее на Android достаточно хорошо поддерживает, оно после установки может выглядеть как нативное приложение. Ее плюсы в том, что пользователю не надо заходить в стор, скачивать и т.д., то есть гораздо лучше конверсия в пользователей. Само такое приложение весит столько же, сколько и сайт (от 1 мб до …хе хе- 20мб — есть и такие ). В iOs эта технология теперь уже тоже используется, но с оговорками (да, ад фронтендеров — это фрагментарность)
В общем, ionic.
Хотя, как говорят на просторах интернета…

