Выбор платформы для создания кросс-платформенных мобильных приложений
/* Превью
В этой статье я буду страдать.. тоесть я попытаюсь использовать свой опыт в разработке сайтов для создания кроссплатформенного приложения под смартфонцы.
*/
Интро
Hello %USER_NAME%! В этой статье я буду страдать.. тоесть я попытаюсь использовать свой опыт в разработке сайтов для создания кроссплатформенного приложения под смартфонцы.
Нативные платформы, заточенные под конкретные ОС, я сразу исключил, так как поле языков, IDE и приложений огромное, и вкуривать его у меня нет желания. С поставленными задачами справятся и кросс-платформенные среды разработок.
Выбор среды разработки
Пошарив по просторам сети и изучив платформы для создания мобильных приложений, я наткнулся на несколько топовых в этой тематике систем:
- Xamarin, 2011, (C#) от microsoft, в духе мелкомягких, платненький
- Kivy, 2011, (Python) от Kivy organization, позволяющий дотянутся до аппаратной части и глубин устройства
- PhoneGap и Cordova Apache 2011, (html,js,css) от Adobe, примитивный и простой, но с совершенно противоположной историей, в 2011 adobe выкупила его у Nitobi, когда Nitobi занялся разработкой, не ясно. PhoneGap делается на базе Cordova Apache, и то и то бесплатно и с открытым исходным кодом, совершенно запутанно, и в поисках ответа что лучше использовать, и чем они отличаются я наткнулся на такую запись у адоби
Нас часто спрашивают: «В чем разница между PhoneGap и Cordova?». Апач Кордова родился от PhoneGap. В 2011 году кодовая база PhoneGap была передана Apache для инкубации, и с тех пор проект продолжает развиваться. Apache Cordova по-прежнему является движком, который поддерживает PhoneGap, так же, как WebKit - это движок, который поддерживает многие современные веб-браузеры.
- Flutter, 2017, (Dart) от Google, новенькая платформа, новый язык для кроссплатформенной разработки.
- NativeScript, 2014, (Javascript, TypeScript, CSS) от Telerik by Progress. Работает на базе Angular, поддерживает Vue.js, можно юзать библиотеки с таких ресурсов, как Cocoapods, Android Arsenal, Maven и npm.js
- React Native, 2015, (Javascript) от Facebook, умеет даже немного натива, делает как приложения для десктопа так и для мобильных
Я совершенно запутался, что выбирать то? Чтобы разобраться по лучше я подумал по искать вакансии по каждой платформе из этого списка, таким образом я смогу определить самые популярные и востребованные из них. А это значит будет больше ответов и готовых решений во время разработки.
Для рейтинга я использовал 2 сайта с предложениями о работе, 1 hh.ru по России и freelancer.com по миру, объединил результаты чтобы получить 1 цифру для рейтинга:
№ | Название | hh.ru | freelancer.com | Общий |
---|---|---|---|---|
1 | PhoneGap | 27 | 9 547 | 9 574 |
2 | Xamarin | 134 | 5 197 | 5 331 |
3 | Cordova Apache | 22 | 4 976 | 4 998 |
4 | Flutter | 9 | 891 | 900 |
5 | NativeScript | 6 | 242 | 248 |
6 | Kivy | 0 | 169 | 169 |
7 | React Native | 40 | - | 40 |
О Бог рандома! Что мне использовать? |
Инфу по React Native практически не возможно отследить таким образом, потому что их несколько, есть просто React для создания одностраничных динамичных сайтов SPA (Single Page Application), а слово Native используется в других сверах, например для переводов текстов 0_о
Ознакомившись с платформами и их историями, проанализировав топ, я сделал вывод что буду использовать PhoneGap, он мне показался самым удобным и понятным, и с самым ниским порогом вхождения, к тому же будет легко перейти на Cordova Apache, кроме того я подумал посмотреть есть ли другие топы платформ (: но наткнулся только на топы конструкторов приложений, это мне не подходит, но есть конструктор Appery.io как раз таки на базе Cordova Apache.
Хелло ворд на PhoneGap в Android
Приступив к началу разработки я наткнулся на хороший мануал на ютубчике
Компиляция прямо из гита это здорово, я люблю гит (: Создал на гите репозиторий PhoneGap_template внес небольшие правки, перешёл на build.phonegap.com зарегался, вставил ссыль на репозиторий и выдал он мне .apk, закинул на телефон, всё ок запустилось, прелесть.
Хелло ворд на React Native
У реакта давольно высокий порог вхождения, но много удобных инструкций, например вот, есть отличный видео курс, правда на английском. А еще потрясающая вещь, Expo - удобный онлайн редактор с предоставлением результата работы приложения на различных устройствах онлайн, андройд йос и десктоп, из за чего пощупать реакт очень легко, и понять на сколько же геморойно на нём разрабатывать (я имею в виду порог вхождения после веб разработки сайтов), зато можно встроить хелло ворд прямо сюда.
Тут - полезная статья про разработку приложения на React Native с обзором подводных камешков и тд. Сразу помогает понять стоит его использовать для определённого проекта или нет.
АПД:
15.08.2019 04:45:18
https://ionicframework.com - lonic тоже кроссплатформенный фраемворк на базе angular и apache cordova
15.08.2019 05:02:31
https://www.appcelerator.com - еще один фраемворк на JS
19.08.2019 02:39:27
quasar - работает на базе vue и имеет много готовых компонентов в стиле material design 2.0
28.08.2019 02:09:36
http://phaser.io/ - html для десктопных и мобильных игр
Комментарии ()
Написать комментарий