Мир новых технологий (обзоры, новинки)
Существует много способов создать мобильное приложение – есть нативная разработка на платформе (с использованием Java и Kotlin для Android, Obj-C и Swift для iOS), а также React Native от Facebook, Electrode Native от Walmart, фреймворк Ionic, подходящий для определенных типов приложений Unity и Flatter, который был недавно выпущен Google.
Вы когда-нибудь задавались вопросом, как эти библиотеки и фреймворки влияют на размер вашего приложения? Давайте проанализируем размер APK приложений, созданные при помощи разных фреймворков. Приложения будут содержать только заголовок сверху и текст в центре экрана. Это необходимый минимум для создания APK.
Начнем с самого простого — Java. Как и следовало ожидать, этот файл стал самым маленьким по размеру, так как мы используем только Java и платформу Android для создания этого приложения. Единственной зависимостью здесь является Android Support Library, которая занимает довольно много места.
Мы могли бы снизить размер приложения, удалив эту зависимость и используя Activity вместо AppCompatActivity.
Если вы долгое время программировали на Java, Kotlin — это глоток свежего воздуха. APK приложения на Kotlin содержит все, что мы видели в APK Java, а также небольшую часть синтаксической информации Kotlin.
Если вы пришли из веб-разработки и хотите сделать большую часть приложения на JavaScript, ваш вариант — это React Native. Фреймворк также полезен, если вы хотите быстрее проводить итерации без релиза приложения при каждом небольшом изменении.
В пакете, созданном React Native, есть несколько классов в файле classes.dex, которые имеют 12,193 методов для этого конкретного приложения.
Он также добавляет некоторые собственные зависимости в каталоге lib для x86 и armeabi-v7a. В общей сложности React Native добавляет около 6.4 МБ зависимостей.
Приложение, созданное cli Flatter, содержит движок C/C ++ и Dart VM, которые занимают почти весь APK. Приложение напрямую запускается с использованием набора собственных команд и не задействует интерпретатор.
Каждый способ написания приложения имеет свои плюсы и минусы. Вам нужно выбрать метод, который наиболее подходит для вашего случая и для вашей компании. Вы также можете смешивать и сопоставлять некоторые из этих фреймворков, чтобы создавать разные части приложения.
Например, если вы экспериментируете над чем-то, создайте этот компонент в React Native. Если вы хотите поделиться кодом между iOS и Android-приложением, поопробуйте React Native или Flutter.io, а если вы фокусируетесь только на Android и хотите сохранить минимальный размер приложения, вы можете использовать Java или Kotlin.