Научная статья на тему 'К ВОПРОСУ ВЫБОРА ОПТИМАЛЬНОГО ЯЗЫКА ПРОГРАММИРОВАНИЯ ДЛЯ РАЗРАБОТКИ МОБИЛЬНОГО ПРИЛОЖЕНИЯ'

К ВОПРОСУ ВЫБОРА ОПТИМАЛЬНОГО ЯЗЫКА ПРОГРАММИРОВАНИЯ ДЛЯ РАЗРАБОТКИ МОБИЛЬНОГО ПРИЛОЖЕНИЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
94
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАЗРАБОТКА МОБИЛЬНОГО ПРИЛОЖЕНИЯ / ТИПЫ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ / ANDROID / JAVA / KOTLIN / IOS / OBJECTIVE-C / SWIFT

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Мясоедова Виктория Алексеевна

В статье дается краткий обзор типов мобильных приложений. Сравниваются языки программирования в зависимости на какую мобильную операционную систему разрабатывается мобильное приложение. Для разработки под ОС Android сравниваются языки программирования: Java и Kotlin, для разработки под ОС iOS сравниваются языки программирования: Objective-C и Swift.The article gives a brief overview of the types of mobile applications. Programming languages are compared depending on which mobile operating system a mobile application is being developed for. For Android OS development, Java and Kotlin programming languages are compared, for iOS development, Objective-C and Swift programming languages are compared.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Мясоедова Виктория Алексеевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «К ВОПРОСУ ВЫБОРА ОПТИМАЛЬНОГО ЯЗЫКА ПРОГРАММИРОВАНИЯ ДЛЯ РАЗРАБОТКИ МОБИЛЬНОГО ПРИЛОЖЕНИЯ»

УДК 004

Информационные технологии

Мясоедова Виктория Алексеевна, студент, Хакасский государственный

университет им. Николая Федоровича Катанова, Россия, г. Абакан Голубничий Артем Александрович, научный руководитель, старший преподаватель кафедры ПОВТиАС, Хакасский государственный университет им. Николая Федоровича Катанова, Россия, г. Абакан

К ВОПРОСУ ВЫБОРА ОПТИМАЛЬНОГО ЯЗЫКА

ПРОГРАММИРОВАНИЯ ДЛЯ РАЗРАБОТКИ МОБИЛЬНОГО

ПРИЛОЖЕНИЯ

Аннотация: В статье дается краткий обзор типов мобильных приложений. Сравниваются языки программирования в зависимости на какую мобильную операционную систему разрабатывается мобильное приложение. Для разработки под ОС Android сравниваются языки программирования: Java и Kotlin, для разработки под ОС iOS сравниваются языки программирования: Objective-C и Swift.

Ключевые слова: разработка мобильного приложения, типы мобильных приложений, Android, Java, Kotlin, iOS, Objective-C, Swift.

Annotation: The article gives a brief overview of the types of mobile applications. Programming languages are compared depending on which mobile operating system a mobile application is being developed for. For Android OS development, Java and Kotlin programming languages are compared, for iOS development, Objective-C and Swift programming languages are compared.

Keywords: mobile application development, types of mobile applications, Android, Java, Kotlin, iOS, Objective-C, Swift.

Мобильные приложения - это лучшее, что вошло в обиход и непрерывное

развитие с момента появления смартфонов. Разработчики стремятся реализовать в мобильных приложениях наиболее удобные функции, к которым пользователи могут получить доступ, чтобы упростить жизнь в различных сферах.

Существует большое количество видов мобильных приложений. С точки зрения кодирования, разработчики могут выбрать для создания одного из трех типов мобильных приложений.

Типы мобильных приложений:

• Нативные мобильные приложения - это приложения, написанные на языке, изначально поддерживаемом поставщиком операционной системы устройства. Базовые АР1-интерфейсы платформы на 100 % доступны для кода приложения, а ОС предоставляет библиотеку компонентов пользовательского интерфейса. Процесс сборки преобразует этот код в исполняемое приложение с собственным байт-кодом ОС.

• Кроссплатформенные мобильные приложения - это приложения, написанные на одном языке и работающие на всех платформах. В кроссплатформенных мобильных приложениях язык, на котором написано приложение, может не совпадать с родным языком базовой ОС устройства. Это означает, что код может быть включен, соединен или кросс-компилирован в байт-код, который может выполняться непосредственно в ОС с помощью некоторых вспомогательных библиотек.

• Мобильные веб-приложения - это облегченная парадигма, в которой Ц^-адрес в браузере своего устройства, но они выглядят и работают как обычное мобильное приложение. Мобильные веб-сайты не поставляются как установленное приложение на устройстве, но они являются важной парадигмой, которую следует учитывать при создании для мобильного устройства. Разработчики могут использовать две парадигмы программирования веб-сайтов для создания мобильных веб-приложений:

— Отзывчивое веб-программирование - это стиль программирования веб-сайтов, при котором макет веб-сайта организуется в соответствии с форм-

фактором устройства. Таким образом, вместо горизонтального просмотра контент «защелкивается» на месте, чтобы соответствовать ширине устройства. Эти веб-сайты также можно использовать с рабочего стола.

— Прогрессивное веб-программирование создает прогрессивные веб-приложения, которые представляют собой обычные веб-сайты, которые выглядят как традиционные мобильные приложения при переходе к ним из браузера на мобильном устройстве [1].

Основными операционными система для мобильных устройств являются:

• Android. Платформа Android включает в себя операционную систему на основе ядра Linux, графический интерфейс пользователя, веб-браузер и приложения для конечных пользователей, которые можно загрузить [2].

• iOS. Платформа iOS - это собственная платформа, созданная Apple. Платформа iOS доступна для телефонных устройств (iPhone) и планшетных устройств (iPad) [3].

Платформа Android

Для создания приложений для Android разработчику понадобится набор инструментов для разработки Android, который поставляется с необходимым пакетом SDK, отладчиками и эмуляторами. Среди IDE наиболее популярна Android Studio, но есть и другие не менее популярные IDE, такие как Apache Netbeans и IntelliJ IDEA. Можно иметь среду разработки на любой ОС (Mac, Windows или Linux). Android использует Gradle для системы сборки, а Android Studio поставляется с шаблонами кода и другими инструментами для оценки и улучшения производительности.

Java

Java был языком по умолчанию для написания приложений для Android с момента появления платформы Android в 2008 году. Java - это объектно-ориентированный язык программирования. Это был очень популярный язык как чистый объектно-ориентированный язык (по сравнению с C++), и он был быстро адаптирован платформой Android.

Java компилируется в «байт-код», который во время выполнения интерпретируется базовой виртуальной машиной Java (JVM), работающей в ОС. Разработчик пишет мобильные приложения на Java и программирует для Android SDK. Критики Java говорят, что для выполнения простой задачи в Java требуется много "шаблона" кода, а такие концепции, как исключения, сложны для понимания. На сегодняшний день это наиболее широко используемый язык для разработки приложений для Android.

И все же, по данным Google, с 2022 года Kotlin является предпочтительным языком для разработки под Android.

Kotlin

В 2017 году Google объявил, что будет поддерживать Kotlin в качестве альтернативного первоклассного языка программирования для Android. Kotlin совместим с Java, и все библиотеки Java можно вызывать из Kotlin. Грубо говоря, Kotlin - это более аккуратная форма Java. Кривая обучения от Java до Kotlin плавная. На уровне выполнения Kotlin компилируется в Java Bytecode. Платформа iOS

Для создания приложений для iOS у разработчика должна быть учетная запись разработчика Apple и Xcode на компьютере с ОС MacOS. Так как разработчик не сможет эффективно создавать и отлаживать мобильное приложение только на компьютере с ОС Windows.

Xcode поставляется со всеми необходимыми инструментами разработки Apple: SDK, редактором кода, инструментами компиляции/сборки, симуляторами и отладчиком. Также необходимо использовать CocoaPods или Carthage в качестве менеджеров пакетов, чтобы добавить сторонние SDK или написанные непосредственно разработчиками собственных SDK.

Приложения для устройств iOS можно создавать либо с помощью собственного iOS SDK с Objective-C и Swift, либо с помощью различных кроссплатформенных технологий, написанных для SDK этой платформы, но предназначенных для iOS.

Objective-C

Objective-C был первым языком, поддерживаемым Apple для разработки мобильных приложений iOS. Это объектно-ориентированный язык, который унаследовал синтаксис языка от C и объектно-ориентированный подход от SmallTalk.

Одним из распространенных критических замечаний по поводу языка является то, что его синтаксис кажется неуклюжим из-за многословия, а квадратные скобки трудно отлаживать. Однако это стабильный язык, так как он широко используется уже несколько лет.

С тех пор, как Apple представила Swift, популярность Objective-C для разработки новых мобильных приложений для iOS значительно снизилась.

Apple представила Swift в 2014 году в качестве спецификации языка и сделала его доступным для разработки мобильных приложений на Xcode в 2015 году.

Хотя Swift и Objective-C могут сосуществовать, то есть библиотеки, написанные на Objective-C, и утилиты Objective-C могут использоваться в Swift, Apple делает очевидным, что Swift - это новый выбор по умолчанию для разработки приложений для iOS. Swift - более легкий, простой и компактный язык по сравнению с Objective-C. У разработчиков Objective-C не должно возникнуть проблем с переходом на Swift.

Мобильные платформы могут не претерпевать кардинальных изменений, кроме Apple и Google, добавляющих новые функции для своих платформ. Важно выбрать язык разработки приложений и подход к разработке, исходя из навыков команды и требований к приложению.

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

Библиографический список:

1. IBM Developer [Электронный ресурс]: Mobile Development, URL: https://developer.ibm.com/articles/mobile-app-development (дата обращения: 15.11.2022).

2. Android [Электронный ресурс]: Что такое Android, URL: https://www.android.com/intl/ru_ru/what-is-android/ (дата обращения: 17.11.2022).

3. Apple [Электронный ресурс]: About iOS, URL: https://www.apple.com/ru/ios/ios-15 (дата обращения: 17.11.2022).

i Надоели баннеры? Вы всегда можете отключить рекламу.