Comments 16
Закопайте уже стюардессу. Дайте уже PhoneGap помереть спокойно. Там на сложных проектах больше костылей требуется. Пишите на нативе и будет вам счастье. Кордова подходит для прототипирования, но тяжелые приложения очень геморны.
Старые гибридные решения априори проигрывают в юзабили нативным решениям. Лучше тогда сразу смотреть в сторону RN или Flutter, если прямо горит гибрид сделать. Да и Apple не очень жалуешь уже Кордову — https://github.com/apache/cordova-ios/issues/661. Так же не забываем, что гибридные фреймворки обычно выходят с задержкой относительно новых версий OS и у вас вариант либо пилить самому поддержку, либо ждать когда пофиксят. Как пример с "челкой" на iOS или сменой пермишенов на Android. Соотвественно при таком подходе страдают пользователи приложения.
Лично как по мне, приложения на кордове сейчас это решение "из говна и палок".
Я думал, что стрельба себе в ноги гибридными приложениями уже вышла из моды.
А расскажете подробнее? Хотелось бы подробностей о минусах, детальнее. Думаю, полезно будет не только мне, но и тем, кто наткнется на эту статью через годы :)
С чего бы им помирать? Мы на кордове недавно за пару недель подняли виндовс приложение в одно лицо. Самому приложению уже несколько лет. Писать виндовс с нуля пришлось бы дольше однозначно. Для бизнеса — это однозначный выигрыш.
Кордова это мрак. Получили в наследство 2 проекта на ней — один уже переписали на Натив, второй скорее всего переведем на flutter. Cordova быстрый старт для веб разработчика, и потому кажется лёгким решением, на самом же дело в конце вас ждёт фул-рефакторинг
А расскажете, какие трудности возникли с поддержкой этих проектов? Ну то есть, я нисколько не сомневаюсь в их объективности, но всем было бы полезно знать конкретику.
Лично меня просто выбешивает то как кордова/npm с плагинами работает. Вроде все есть. всякие packages.json, config.xml. Жмякни кнопочку и получи счастье. Ан нет. Оно то версию возьмет поновее (задавайте фиксированные версии плагинов и будете спать спокойней) и рассыпется с непонятной ошибкой, то просто вчера билдилось, сегодня уже нет. Кроме того — слои иоников, кордов, градлов, андроидов, икскодов со свифтами и обжектив сями, мсбилдов с дотнетами. И это все довольно слабо связано, причины ошибок неочевидны и требуют кучу времени чтоб это все расковырять. А код… ну, жаваскрипт он и в африке жаваскрипт. Вы либо умеете читать код и можете работать с чем угодно, либо являетесь "jquery программистом " и переписываете.
— ui на html и ccs. Плюс, что оно отлично скейлиться, минус, что все это генериться js. Буквально все, весь html код в строках. Размеры js — бесконечные полотна. Т.к. нельзя подключить один скрипт к другому, то легко было найти файлы по 2к строк — такое просто не может произойти на нативной реализации
— краши в WebView, и с этим ничего сделать не удалось — приложение просто вылетает с нативной ошибкой в WebView
В общем, при всей моей любви к разным фраемворкам и зверям это показался мне «самым-самым»)) Уж скорее я брошу программирование, чем начну писать так код. Кстати второй проект, так и не переписали на натив. У нас есть человек, который продолжает там что-то воять… о, ужас
Сколько кордовы (и плагинов) видел — вполне нормально это разбивалось на несколько js, и полотна кода не требовались… И HTML вполне себе отдельный HTML, не смешанный с js.
Про ошибку в WebView — сложно сказать, моя работа с кордовой сводится к относительно простым тестовым проектам и плагинам, сложных вещей в UI я не делал, может, не натыкался просто.
Ну, по поводу «самый-самый» — тут мне сложно оценить, я не так много фреймворков трогал руками)
Главная беда cordova в том что это технология появилась очень рано, это был первый фреймворк позволяющий создавать гибрыдные прилодения, 14 лет назад телефоны были медленные, операционные системы сырые, браузерные движки тоже медленные и кривые, js библиотеки тоже баговые и вот все проблемы свалили на cordova, сейчас все эти проблемы решены. Я работаю в аутсорс компании и мы впариваем нативные решения тем клиентам кто не шарит так как на этом мы больше зарабатываем, а вот те клиенты что более менее разбираются просто спрашивают а почему приложение лучше делать на нативном в 2-3 раза дороже чем на кордове а мы такие начинаем растекаться ничего толком сказать не можем. Если хотите быстро узнать что такое кордова есть продукт appery.io не реклама просто мне очень нравится.
Cordova. Quick start