Android
Android — операционная система, разработанная корпорацией Google для использования в мобильных устройствах. Сейчас применяется для мобильных телефонов, планшетов, электронных книг, носимой электроники, ТВ-приставок, иногда для ноутбуков, а также для автомобильных систем.
Операционная система базируется на ядре Linux и на реализации JVM от Google. В отличие от iOS, Android является платформой с открытым исходным кодом. Также, в отличие от iOS, Android не имеет ограничений по марке устройств, где он может использоваться, а код доступен для различных аппаратных платформ, таких как ARM, MIPS, x86. Также в экосистеме существуют альтернативные Google Play магазины приложений, например, от Amazon, Opera, Яндекс, Meizu, 1Mobile. Сейчас по доле устройств Android является несомненным лидером.
Критикуют же Android по большей части за сложность и за риски в информационной безопасности, которые, однако, обычно связаны не с уязвимостью самой платформы, а с неаккуратными действиями самих пользователей.
Нативную разработку приложений для Android можно вести на языках программирования Java или Kotlin. Android Native Development Kit позволяет портировать библиотеки и компоненты приложений, написанные на Си и других языках. Основной средой разработки сейчас является Android Studio. Основной метод дистрибуции приложений — магазин приложений Play Market.
Всего существует 4 основных подхода к созданию приложений под мобильные ОС:
- Нативная разработка. Для нативной разработки под Android используется Java или Kotlin, а для iOS — Swift. Этот способ разработки не имеет никаких ограничений в реализуемости функционала и обеспечивает максимальную производительность приложений. Но это и самый ресурсозатратный способ.
- Разработка на кросс-платформенных фреймворках. Наиболее популярны фреймворк React Native на языке программирования JavaScript, фреймворк Xamarin на C#, а также Flutter на Dart. Этот способ более экономичный, так как позволяет создавать сразу мобильные приложения и под iOS, и под Android, используя единый технологический стек и частично объединённую кодовую базу для разных платформ. По производительности созданные на этих фреймворках бизнес-приложения не сильно отстают от нативной разработки.
- WebView. Приложения-обертки над сайтом — браузер, который умеет открывать один сайт. Производительность этих решений достаточно низкая, доступ ко многим функциям ОС невозможен, но это самое бюджетное решение с точки зрения ресурсозатрат.
- PWA — прогрессивные веб-приложения: это по сути сайты, которые предоставляют пользователям возможность добавлять их как приложения на домашний экран ОС.
Google Play Market — магазин приложений для ОС Android. Ранее он назывался Android Market. Существуют альтернативные Google Play магазины приложений.
Нативную разработку приложений для Android можно вести на языке Java и Kotlin. Учётная запись разработчика, которая даёт возможность публиковать приложения, создаётся сильно проще, чем в Apple и стоит дешевле (всего $25 единовременно).
Kotlin — статически типизированный язык программирования, работающий на базе JVM.
Язык был создан для большей лаконичности и типобезопасности (относительно Java), а также для большей простоты использования (относительно Scala). Кроме работы поверх JVM, Kotlin компилируется в JavaScript и в исполняемый код ряда платформ через инфраструктуру LLVM.
React Native — это фреймворк на JavaScript для разработки мобильных приложений под операционные системы iOS и Android.
Фреймворк React Native позволяет разрабатывать мобильные приложения для iOS и для Android с использованием всего одного языка программирования — JavaScript, а также использовать в этих двух приложениях значительную часть общего кода.
iOS — операционная система для мобильных телефонов Apple. Для планшетов с недавнего времени используется отдельная ОС — iPadOS, а для устройств Apple TV — tvOS. Часы же Apple Watch изначально работали на отдельной операционной системе — watchOS.
Все эти операционные системы основаны на ядре настольной операционной системы Apple macOS (OS X). Дистрибуция приложений для этих ОС реализована через магазин приложений App Store.