@HellYeahOmg

Зачем нужны нативные языки для мобильной разработки?

Зачем использовать "нативные" языки, например, swift, java..., если можно использовать React Native/Dart(Flutter) и писать сразу под 2 платформы?
  • Вопрос задан
  • 288 просмотров
Решения вопроса 2
AlexMarken
@AlexMarken
На нативных языках приложение будет работать быстрее, занимать меньше памяти, как оперативной, так и физической относительно такого же функционала, но на другом языке. Использование самого свежего функционала ОС. Да и в каком-то плане, наиболее безопаснее. Всё это благодаря низкоуровневому обращению к API и инструкциям системы.

React Native и другие подобные средства лишь упрощают разработку, сокращая необходимое время и деньги на эту процедуру. Согласитесь, для заказчика дешевле будет написать один код (но с различными исключения под платформы) для iOS и Android, чем нанимать разработчиков под каждую платформу. Такие приложения имеют ограничения по разному функционалу, что приводит к написанию ещё большего кода.

Вот пример.
Много лет назад из любопытства написал два одинаковых по функционалу приложения под Android на Java и Delphi (да, он тоже теперь кроссплатформенный). На Java приложение работало намного быстрее - раза в 1.3-1.5 и занимало в 4 раза меньше физической памяти.
И ещё один, но про Рокетбанк.
Рокетбанк выпустили новое приложение на RN для iOS и Android. Возьмём платформу iOS.
1. Функционал нового и старого приложений одинаков, но страница авторизации с подтверждением входа по TouchID в новой версии висит куда дольше - на пару секунд. Не думаю, что там такой огромный функционал, который увеличивает время инициализации приложения.
2. Занимает в 2 раза больше физической памяти.
3. Накатывали JailBreak на прошивку... доступ к данным старого приложения получить не удалось, из нового вытащили различную инфу, включая токен сессии.

И гугл в помощь.
Ответ написан
Комментировать
@abmanimenja
Flutter, к примеру, отлично поддерживает элементы интерфейса (менюшки и т.п.). И приложение, основанное на обычном интерфейсе с пользователем, ты напишешь легко.

Но при попытке написать с ним нечто, где визуальную составляющую генерируешь сам - например, игру - столкнешься с невозможностью.

Любое универсальное априори хуже в деталях.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы