ПО для разработки мобильных приложений

в 14:06, , рубрики: android development, html, ios development, мобильные приложения, Разработка под android, разработка под iOS

В ходе написания курсовой работы на заданную тему я столкнулся с проблемой поиска информации. Большинство ресурсов было посвящено определенным фреймворкам/средам разработки, в результате чего было решено оформить итоговое содержание курсовой в виде статьи на хабре. Это статья направлена в первую очередь на людей, которые не разбираются в данном виде ПО.

Виды средств для разработки

Все средства для разработки мобильных приложений можно поделить на две группы:

  • Native SDK;
  • Кроссплатформенные фреймворки использующие HTML 5/CSS3/JS/C#.

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

image

Стандартные среды разработки

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

  • Для платформы Android используется язык Java, однако возможно использовать языки C/C++, что позволяет повысить производительность на критичных участках кода;
  • Для платформы iOS используется язык ObjectiveC и Swift. Swift — новый язык программирования, представленный компанией Apple в 2014 году. Он унаследовал большинство черт от ObjectiveC.

Кросплатформенные фреймворки

В силу фрагментации мобильных устройств, для большинства организаций становится экономически невозможным создавать приложения для всех мобильных платформ, используя Native SDK. На помощь приходят кроссплатформенные фреймворки, которые позволяют разрабатывать мобильные приложения, используя стандартные веб-технологии HTML5/JS/CSS3/С#. Достаточно написать приложение на HTML5, используя API фреймворка для работы с аппаратными функциями устройства, и на выходе получить готовые приложения почти для всех мобильных платформ.

Как уже было сказано, фреймворки могут использовать HTML5/CSS/JS/C# и другие средства. Все фреймворки можно разделить на две группы:

  • HTML5 фреймворки, позволяющие создавать веб приложения, используя HTML, CSS, Javascript. Эти технологии обеспечивают легкость вхождения для разработчиков, большое покрытие аудитории(браузеры сейчас есть практически на каждом мобильном устройстве). Приложения используют единую базу кода и дешевы в разработке;
  • Другие фреймворки, например Xamarin. В нем используется язык программирования C#, который славится своей кроссплатформенностью, однако разработка графического интерфейса для каждой платформы должна производиться отдельно.

HTML5

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

Другие фреймворки

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

Вы пишете код на языке С#, с применением всех привычных для вас языковых особенностей, например LINQ, лямбда-выражений и прочих. При этом вы имеете полный доступ ко всем возможностям SDK платформы и родному механизму создания графического интерфейса, получая на выходе приложение, которое, строго говоря, ничем не отличается от нативных и (по крайней мере по заверениям) не уступает им в производительности. Сам фреймворк состоит из нескольких частей, которые позволяют перевести ваш код C# на другие платформы:

  • Xamarin.IOS — библиотека классов для C#, предоставляющая разработчику доступ к iOS SDK;
  • Xamarin.Android — библиотека классов для C#, предоставляющая разработчику доступ к Android SDK;
  • Компиляторы для iOS и Android;
  • IDE Xamarin Studio;
  • Плагин для Visual Studio.

Заключение

Необходимо добавить тот факт, что количество мобильных платформ растет. Появляются и закрепляют свои позиции новые платформы Firefox OS, Tizen от Samsung. Гибридные приложения на HTML5 — хорошее средство для создания действительно мультиплатформенных приложений. Эти факты вселяют уверенность в то, что данное направление будет развиваться, особенно, в сфере бизнес приложений.

Автор: Dedrus

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js