Статья опубликована в рамках: Научного журнала «Студенческий» № 16(102)
Рубрика журнала: Информационные технологии
Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3, скачать журнал часть 4
ВЫБОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ РАЗРАБОТКИ МОБИЛЬНОГО ПРИЛОЖЕНИЯ
SELECTING THE SOFTWARE FOR THE DEVELOPMENT OF A MOBILE APPLICATION
Dair Mukazhanov
undergraduate, Department of Information Technology, L.N. Gumilyov Eurasian National University,
Kazakhstan, Nur-Sultan
АННОТАЦИЯ
В настоящее время мы заметим быстрый темп развития рынка мобильных устройств и мобильных приложений. Много разработчиков хотят участвовать в этой отрасли, но сначала всем надо думать о том, как начать разработку мобильных приложений. Какие платформы мобильных устройств существуют, какие технологии надо выбрать, какие языки программирования надо изучить. Чтобы получить верные ответы на эти вопросы, разработчикам надо узнать все достоинства и недостатки всех технологий разработки мобильных приложений, в этой статье мы узнаем об этом.
ABSTRACT
Nowadays, we observe the fast paced development of the market of mobile devices and mobile applications. Many developers want to participate in this industry, but from the beginning of all need to think about what you start with the development of mobile applications. What platforms are mobile devices exist, what technologies need to choose what programming languages to learn. To get the right answers these questions, the developers have to learn all the wealth and the shortcomings of all mobile application development technologies, in this article we will know about it.
Ключевые слова: мобильное приложение, мобильное устройство, платформа, язык программирования, технология.
Keywords: mobile application, mobile device, platform, programming language technology.
В настоящее время, когда прогресс никого не обошел стороной, а смартфоны и планшетные компьютеры стали неотъемлемой частью нашей жизни компаний-разработчиков мобильных приложений становится все больше и больше. И это не удивительно, учитывая стремительные темпы роста рынка мобильных приложений, как следствие роста рынка мобильных приложений, как следствие роста рынка самих смартфонов [1]. Количество пользователей мобильных приложений растет, поэтому нуждается в количестве и в качественных программных обеспечениях. Это приводит к постоянному бурному росту технологий разработки приложений для мобильных устройств.
После принятия идеи о приложениях, которые необходимо создать, предпринимателям и разработчикам нужно решить вопрос, это выбор правильной технологии разработки этого приложения. Этот выбор зависит от цели приложения и от платформы, на которой приложение будет работать. У каждой платформы мобильных приложений имеется интегрированная среда разработки, предоставляющая инструменты, позволяющие разработчикам кодировать, тестировать и внедрять приложения на эту платформу. Сейчас на рынке существуют несколько платформ для мобильных устройств. Этим платформами являются:
- iOS.
- Android.
- Windows Phone.
- Blackbarry OS.
- Symbian OS.
- Bada.
Таблица 1.
Мобильные платформы и их технологии разработки
Платформы |
Язык программирования |
Среды разработки |
Девайсы |
iOS |
С++, С#, Objective-C |
Xcode, Xamarin Studio |
iPhone |
Android |
Java, C++, C |
Eclipse, Xamarin Studio |
Android devices |
Windows Phone |
C# |
Visual Studio |
Windows phones |
Blackbarry OS |
Java, C++ |
Momentix IDE |
Blackberry phones |
Symbian OS |
C++ |
Carbide |
Nokia phones |
Bada |
C, C++ |
Bada |
Смартфон Samsung |
На таблице видно, что самые популярные языки программирования для разработки мобильного приложения это Java, C++, C#, Objective-C
Java является одним из самых постоянно используемых языков программирования в мире. И с точки зрения производительности, Java представляет собой скомпилированный язык, который может быть запущен двумя различными способами: либо в окне браузера или в виртуальной машине, которая не требует браузер [2]. Такая гибкость имеет тенденцию означать много, когда речь идет о повторном использовании кода и обновлении программного обеспечения. Если мы хотим создать приложения на Android, тогда мы должны иметь хотя бы базовые знания о Java. Потому что Android основан на Java. Android SDK включает в себя множество стандартных Java-библиотек (библиотеки структуры данных, математические библиотеки, графические библиотеки, сетевые библиотеки). Android приложения выполняются в специальной виртуальной машине под названием Dalvi VM. Хотя детали этой виртуальной машины не имеют значения для среднего разработчика, но эта машина позволяет нам не беспокоиться о том, как наше приложение будет работать в различных устройствах платформы Android. Java создан долго после языков C и C++, поэтому Java включает в себя много мощных функций языков С и С++. Тем не менее, у Java не только мощные функции, а еще большие библиотеки, и эти библиотеки разработаны, чтобы помочь разработчикам создавать приложения [3].
C++ был построен специально для платформы независимости и находится в каждой отдельной операционной системе. Обычный мобильный пользователь может знать, что Android приложения написаны на Java и iOS приложения на Objective-C, но многие не знают, что есть больше C/С++ кода в памяти на устройствах, чем все остальное. Набор инструментов для Android NDK является отличным примером полной C/C++ поддержки, этот набор был добавлен первоначально для команды разработчиков игры, чтобы дать им возможность получить максимально возможную производительность из устройства. Многие из библиотек, доступных на этих устройствах подвергаются с помощью функциональных интерфейсов C. С является предшественником таких языков программирования как C++, Java, C#, JavaScript и Perl. Поэтому изучение языка C помогает нам понять другие языки. Язык C используется для разработки низкоуровневых приложений, так как считается ближе всего к аппаратному, уступая только ассемблеру. В языке C еще не хватало работы с объектами. Поэтому C++ был разработан, является одним из самых распространенных языков в мире. Google Chrome, Mozilla Firefox, Winamp и линейка продуктов Adobe были разработаны с помощью C++. Кроме того, некоторые современные игры и операционные системы были разработаны на С++ из-за быстрого процессинга и компиляции. Одно из наиболее значимых достоинств C++ то, что он сочетает свойства как высокоуровневых, так и низкоуровневых языков [4].
Когда в большинстве стран мира используется C++ для разработки программного обеспечения, Apple решил использовать в качестве основного языка программирования Objective-C. Как и C++, Objective-C является надмножеством языка C. Поэтому любые программы на С являются программами на Objective-C. Тем не менее, последний имеет ряд функций, которые специфическим образом взаимодействуют непосредственно с графикой, функциями ввода/вывода и отображения. Objective-C является частью среды разработки Apple и полностью интегрирован во все фреймворки iOS и MacOS. В последнее время Apple создал язык Swift для разработки приложений на их устройствах, и Swift основан из Objective-C. Сейчас мы можем создавать приложения для устройств Android, IOS, и Windows, с помощью Visual Studio с помощью C #. Мы можем программировать на C# под Windows Phone, iOS и Android, это более чем 2.2 миллиарда устройств. Кроме мобильных устройств C# работает на многих встраиваемых, 34 десктопных и серверных платформах. У языка С# есть мощные возможности, объектноориентированное программирование и инкапсуляция позволяют максимально переиспользовать код. Reflection и dependency injection добавляют в язык мощь и гибкость. C# на iOS использует оптимизирующий компилятор LLVM. Им же собирается написанный на C и C++, iOS. Вы получаете лучшее из обоих миров: высокую продуктивность C# и производительность низкоуровневого языка. На Android C# работает быстрее Java из-за лучшего дизайна языка (value types, real-generic types, невиртуальные методы по умолчанию) и более зрелой Mono Runtime в сравнении с молодым Dalvi.
Список литературы:
- J’son & Partners Consulting. Рынок разработки мобильных приложений. [электронный ресурс] — Режим доступа. — URL: https://json.tv/ict_telecom_analytics (дата обращения 01.03.2020)
- 6 Top Programming Languages For Mobile Development. [электронный ресурс] — Режим доступа. — URL: http://www.informationweek.com/mobile/mobile-applications/6-top-programming-languages-for-mobiledevelopment/d/d-id/1320687 (дата обращения 05.03.2020)
- Learn Java for Android Development: Introduction to Java. URL: https://code.tutsplus.com/tutorials/learn-java-for-android-development-introduction-to-java--mobile-2604 (дата обращения 10.03.2020)
- Why C++ is the perfect choice for modern app development. [электронный ресурс] — Режим доступа. — URL: http://betanews.com/2014/07/22/why-c-is-the-perfect-choice-for-modern-app-development (дата обращения 12.03.2020)
Оставить комментарий