Файл: Критерии выбора средств разработки мобильных приложений (ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИЯ).pdf
Добавлен: 30.03.2023
Просмотров: 438
Скачиваний: 1
СОДЕРЖАНИЕ
1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИЯ
1.1 Понятие мобильного приложения
1.2 Классификация мобильных приложений
1.3 Обзор мобильных операционных систем
2. СРАВНИТЕЛЬНЫЙ АНАЛИЗ СРЕДСТВ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ И КРИТЕРИЕВ ИХ ВЫБОРА
2.1 Анализ программного обеспечения для разработки мобильных приложений
2.2 Сравнительный анализ методов разработки мобильных приложений
2.3 Сравнительный анализ критериев выбора средств разработки мобильных приложений
Подводя итоги, следует разбить выбор среды разработки и применяемых технологий на два этапа: определение целевой аудитории и определение функций, которые должно выполнять приложение. Существует множество основных языков программирования, таких как Swift, C#, C++, Java, JavaScript, PHP, HTML, CSS, которые можно применять при разработке приложений для мобильных устройств. Таким образом, возможности современных технологий разработки позволяют создавать мобильные приложения различной сложности. Выбор той или иной платформы зависит от бюджета и требований, предъявляемых к будущему приложению.
2.3 Сравнительный анализ критериев выбора средств разработки мобильных приложений
Попробуем выделить наиболее важные критерии при выборе интструмента для разработки мобильных приложений и проранжировать по ним средства разработки. Для сравнения возьмем наиболее популярную платформу iOS и нативное средство Objective-C с iOS SDK и 2 фреймворка: Appcelerator Titanium и PhoneGap
- Нативность. Показатель достаточно важный, и его важность только растет со временем, потому что мобилильные ОС развиваются очень быстро и глупо не пользоваться теми возможностями, которые предоставляет каждая из них. По этому показателю выигрывает, безусловно Titanium, но оба фреймворка проигрывают iOS SDK, которым вынуждены пользоваться
- Производительность. Безусловным лидером и тут является iOS SDK. Titanium, конечно, уступает ему, но за счет того, что все элементы интерфейса в итоге становятся теми же, что и в Objective-C выигрывает у PhoneGap, который проигрывает по производительности, за счет того, что весь интерфейс помещается в webView и при серьезных объемах данных этот интерфейс заметно подтормаживает. Также стоит отметить, что очень сложно застваить работать Titanium и PhoneGap-приложения долго без crashes. Видимо, это связано с тем, что освобождение памяти реализовано в них совсем не идеально. Утешает лишь то, что разработчики постоянно их совершенствуют и исправляют ошибки
- Кроссплатформенность. Тут уже уверенно лидирует PhoneGap с 7 платформами. Titanium — 3 платформы (правда, как он работает с BlackBerry мало кому известно). Ну, а iOS SDK на то и iOS SDK
- Скорость разработки. Здесь все совсем не очевидно. На первый взгляд кажется, что в порядке убывания скорости это выглядит вот так: PhoneGap, Titanium, iOS SDK. Однако это верно для самых простых приложений, с увеличением сложности проекта картина меняется прямо пропорционально и для сложных проектов мы получаем все наоборот: iOS SDK, TItanium, PhoneGap. Аргументация этого тезиса заключена в следующих двух пунктах
- Разнообразие возможностей. Первое место у iOS SDK, второе я бы отдал Titanium — за счет того, что он поддерживает меньше платформ — методов и свойств у классов предоставляется больше, кроме того есть классы, работающие только с iOS, либо только с Android, предоставляя специфические возможности платформ. Но как только их станет не хватать — разработчику придется писать модули (а в случае с PhoneGap — плагины) — а для этого ему придется изучить Objective-C, после чего, вполне возможно, что он захочет переписать проект именно на нем
- Средства отладки. Отладчик в Xcode основан на GDB, кроме того в Xcode есть много дополнительных средств, таких как zombie objects, которые позволяют отследить ошибки освобождения памяти и масса возможностей в Instruments, который с четвертой версии встроен в Xcode. В Titanium уже около года назад — с выходом Titanium Studio — появился свой отладчик, который, однако, позволяет увидеть стек вызовов только JS-кода, поэтому причины ошибок, которых предостаточно, допущенных разработчиками Titanium, понять иногда бывает крайне сложно и на это уходит уйма времени. Средства отладки PhoneGap еще более скромны, в частности, нет таких возможностей, как точки останова и трассировка стека
- Документированность. Первое место — у iOS SDK. Второе можно отдать PhoneGap, так как многие из возможностей Titanium не документированы совсем, правда оправданием этому служит то, что доступен для скачивания проект Kitchen Sink, в котором реализовано все, что можно сделать с помощью Titanium
Ниже представлена сводная таблица
С помощью полученной информации можно сгруппировать приложения по принципу наиболее подходящего для них средства разработки.
ЗАКЛЮЧЕНИЕ
В ходе выполнения настоящей курсовой работы получены следующие результаты.
1. Рассмотрены модели жизненного цикла разработки программного обеспечения (ПО). В ходе анализа были изучены такие модели, как каскадная, каскадная с промежуточным контролем, V-образная модель, итеративная и инкрементная, а также спиральная модель.
Этапы разработки состоят из планирования, пользовательского проектирования, конструирования и переключения (конверсия данных и внедрение системы в организацию).
2. Изучены технологии разработки мобильных. Способы разработки веб-приложений разделены на несколько категорий: технологии, реализующие логику веб-приложений на стороне сервера; подходы, основанные на программировании или скриптах; каркасы веб-приложений и шаблоны проектирования (паттерны).
Рассмотрены архитектуры построения мобильных приложений с помощью базовых платформо-ориентированых языков программирования, выделены преимущества кроссплатформенной разработки. Выделены характеристики сред разработки, их преимущества и недостатки.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Вендров А. М. Case-технологии. Современные методы и средства проектирования информационных систем. / А. М. Вендров. Москва: Финансы и статистика, 2016. 544 с.
2. Гудов А. М., Завозкин С. Ю., Трофимов С. Н. Спецкурс. Технология разработки программного обеспечения. / А. М. Гудов, С. Ю. Завозкин, С. Н. Трофимов // Учебно-методический комплекс. Кемерово, КГУ, 2017. URL: http://unesco.kemsu.ru/study_work/method/po/UMK (Дата обращения 09.11.2018).
3. Зараменских Е. П. Управление жизненным циклом информационных систем: монография. / Е. П. Зараменских. Новосибирск: Издательство ЦРНС, 2014. 270 с.
4. Курапова М. В. Разработка методического обеспечения дисциплины «Управление жизненным циклом информационных систем». / М. В. Курапова // Выпускная квалификационная работа. Пермь, ПГГПУ, 2016. URL: http://vkr.pspu.ru/uploads/3681/Kurapova_vkr.pdf (Дата обращения 08.11.2018).
5. Лобода Ю. Г., Орлова О. Ю. Технологии разработки веб-приложений. / Ю. Г. Лобода, О. Ю. Орлова // Научные работы. Одесская национальная академия пищевых технологий. Одесса, Национальная библиотека Украины имени В. И. Вернадского, 2014. Вып. 46, том 1. С. 239-244.
6. Орлик С. В. Введение в программную инженерию и управление жизненным циклом ПО. / С. В. Орлик. Москва: Символ-Плюс, 2015. 183 с.