Файл: Критерии выбора средств разработки мобильных приложений (Общая характеристика современных мобильных приложений).pdf
Добавлен: 30.03.2023
Просмотров: 206
Скачиваний: 2
Одно из основных преимуществ платформы Android - ее открытость. Операционная система Android построена на основе открытого исходного кода и находится в свободном распространении. Это позволяет разработчикам получить доступ к исходному коду и понять, каким образом реализованы свойства и функции приложений. Любой пользователь может принять участие в совершенствовании данной операционной системы. Для этого достаточно отправить отчет об обнаруженных ошибках либо принять участие в одной из дискуссионных групп Open Source Project. В Интернете доступны различные приложения Android с открытым исходным кодом, предлагаемые компанией Google и рядом других производителей [6].
Глава 2. Критерии выбора средств разработки мобильных приложений на базе операционной системы Android
2.1. Анализ существующих разработок мобильных приложений на базе операционной системы Android
Приложений справочников, предоставляющих систематизированную информацию по присутствию в товаре компонентов животного происхождения, представлено в официальном магазине ОС Android не так уж и много. Рассмотрим три наиболее популярных приложения ниже.
¿Es Vegan?
Текст приложения выполнен на испанском языке, однако, навигационные элементы, такие как: основное меню, строка поиска, окно с формой для заполнения представлены на английском языке. Приложение состоит из окна главного меню с тремя разделами, представленного на рисунке 2.1.
Рисунок 2.1 - Снимок экрана главного меню приложения ¿Es Vegan?
Первый раздел содержит в себе список пищевых добавок с указанием индекса, названия и статуса добавки, дополнительно обозначенного цветом, как показано на рисунке 2.2.
Рисунок 2.2 - Снимок экрана с разделом о пищевых добавках приложения ¿Es Vegan?
Второй и третий разделы, интерфейс которых представлен на рисунке 2.3, под названиями «Продукты» и «Непроверенный список» содержат в себе списки компонентов, сформированные неизвестно по какому критерию, что очень неудобно.
Рисунок 2.3 - Снимки экрана с разделами о продуктах и сомнительным списком приложения ¿Es Vegan?
Также в последнем разделе, представленном на рисунке 2.4, есть возможность пользователю самому добавить какой-либо компонент в базу приложения.
Рисунок 2.4 - Снимок экрана с формой для добавления компонента в приложение ¿Es Vegan?
Is it Vegan?
Простой лаконичный справочник на английском языке с двумя разделами. Первый раздел с индексами добавок животного происхождения, приведенный на рисунке 2.5, (также можно нажать кнопку «show more» и узнать подробнее, какие добавки однозначно веганские, а какие спорные).
Рисунок 2.5 - Снимки экрана первого
Второй раздел содержит информацию о пищевых ингредиентах точно или возможно животного происхождения, но уже с их названиями.
Также в данном разделе имеется дополнительная настройка по активации контента, специфичного для Норвегии, что неудобно поскольку данный контент отражает весьма специфические особенности конкретного региона, а тем более страны, и не может использоваться на территории Российской Федерации в виде отсутствия данных ингредиентов, но в целом может путать неопытного пользователя и даже вызвать ненужные опасения, а также дать неверную информацию, что принципиально при использовании данного продукта. Интерфейс данного раздела представлен на рисунке 2.6.
Рисунок 2.6 - Снимок экрана со списком компонентов по названиям приложения Is it Vegan?
Vegan Additives
Приложение на английском языке, представляющее собой список из индексов с наименованиями всех пищевых добавок, отмеченных значками, означающими их происхождение. Имеет поиск по названию и индексу и боковое меню с дополнительными действиями. Его интерфейс представлен ниже на рисунке 2.7.
Рисунок 2.7 - Снимки экрана с интерфейсом приложения Vegan Additives
Подробно рассмотрев данные приложения, можно выделить некоторые особенности, которые представлены в таблице 2.1 ниже.
Таблица 2.1
Сравнительный анализ аналогичных разработок
|
Название приложения |
Достоинства |
Недостатки |
Вывод |
|
¿Es Vegan? |
В каждой из категорий довольно много информации. В списках у каждой позиции есть свое подробное описание, открывающееся в новом окне. Организован поиск по каждому разделу, информацию о конкретной пищевой добавке можно найти не только по ее индексу, но и по названию. |
Неизвестно по какому признаку объединены компоненты из второго и третьего разделов, все вместе - напитки, косметические ингредиенты, материалы для одежды. В последний раздел можно самостоятельно добавить информацию о каком-либо компоненте, что вносит определенную путаницу. Отсутствие хотя бы английского языка, как более распространенного. |
Из данного приложения можно почерпнуть неплохой поиск по любому из наименований компонентов, цветовое выделение ингредиента в зависимости от его происхождения и представление более подробной информации по каждой позиции. |
|
Is it Vegan? |
Быстрый запуск и доступ к информации без лишних нажатий; Минималистичный дизайн. |
Информация лишь о еде, хотя другие повседневные товары так же могут содержать продукты животного происхождения. |
В данном приложении особенно привлекает удобство быстрого доступа к информации без излишнего меню, анимация при смене activity. |
|
Vegan Additives |
Поиск по добавкам; Подробная информация о каждой, открывающаяся в новом окне; |
Отсутствие информации о компонентах животного происхождения в других товарах, помимо продуктов. |
Визуальная составляющая очень хороша, гармоничное расположение элементов относительно друг друга, такую четкость разметки определенно нужно позаимствовать. |
Сравнительный анализ имеющихся приложений позволяет сделать вывод о необходимости разработки приложения для веганов на русском языке с указанием международных форматов продуктов питания и отображения основной информации о них.
2.2. Анализ средств разработки и обоснование выбора технологии проектирования для всех элементов проекта
В настоящее время существует хороший выбор языков программирования для разработки мобильных приложений. Это связанно с тем, что для различных мобильных устройств приходится использовать различные языки программирования. Это вызвано тем, что мобильные устройства имеют различные ОС. Ниже будут рассмотрены такие технологии, как Java, Qt (основанный на библиотеках C++), Windows Phone SDK (написание на языке XAML), iPhone SDK (основной язык - Objective-C), Android SDK (основной язык -Java) и Symdian (основной язык -C++):
1. Java 2 Micro Edition (J2ME). В первую очередь J2ME это набор спецификаций и технологий, предназначенных для различных типов портативных устройств. Направление определяет тип конфигурации центральных библиотек Java, а так же параметров виртуальной машины Java (в которой будут исполняться приложения). Логично предположить, что устройства Connected Device Configuration (CDC) будут более «развитыми», в качестве примера можно привести коммуникаторы. К устройствам Connected Limited Device Configuration (CLDC) относятся обычные мобильные телефоны, аппаратно обладающие более скромными возможностями (ресурсами). Специальные режимы позволяют определять функциональность конфигураций для различных типов устройств. Программирование Java-приложений и на сегодняшний день занимает большую часть, так как большинство мобильных устройств (в основном мобильные телефоны) в мире имеют уже предустановленную Java-машину.
2. Qt. Qt является одной из самых удачных библиотек для С++. Отладка приложений, разработанных для мобильных устройств, происходит с помощью эмулятора, который содержится в среде разработки. Таким образом, мы можем писать сложные приложения для мобильных устройств с использованием библиотек C++ и поддержкой кроссплатформенности. В настоящее время последняя версия - Qt 5 бета.
3. Windows Phone SDK. Вся разработка под Windows Phone ведется в среде Visual Studio. Среда является очень удобной для разработки и отладки приложений. Для мобильных приложений под Windows Phone отладка происходит с помощью эмулятора Windows Phone с помощью среды разработки Windows Phone.
4. iPhone SDK. Разработка под iPhone под операционную систему iOS возможна только под Mac OS X. Но в Интернете можно найти статьи, как можно программировать и на Macintosh и даже на Virtual Machine (VM). Стоит заметить, что Apple предоставляет инструменты бесплатно, платить придется за подписку разработчика. Отладка приложения происходит с помощью среды XCode и эмулятора iPhone установленного в ней.
5. Android SDK. Для разработки под Android можно использовать среду Eclipse с установленным плагином Android Development Tools (ADT). Существует различные версии SDK, которые используются для написания кода для различных версий Android. В настоящее время большое распространение получили версии 2.2 и 2.3. Поддерживается почти полная обратная совместимость версий.
6. Symbian и C++. Для написания приложений под Symbian можно использовать язык программирования C++. В основном данный подход используется для Symbian OS v6.1, 7.0, 7.0s и 8.0 [3].
В соответствии с этапами проектирования и разработки данного приложения были проанализированы средства, решающие поставленные задачи, как конструирование визуальной составляющей проекта, так и функциональной - написание кода. В первую очередь необходимо было спроектировать интерфейс мобильного приложения на основе актуальности его разработки, потенциальной аудитории и прочих параметров. Проектирование интерфейса осуществлялось подручными средствами в виде набросков, чертежей и схем. В последующем процессе создания макетов и шаблонов приложения были использованы графические редакторы. А именно - комбинация Adobe Photoshop и Adobe Illustrator.
Adobe Photoshop - это многофункциональный графический редактор, разработанный и распространяемый фирмой Adobe Systems. В основном работает с растровыми изображениями, однако имеет некоторые векторные инструменты.
Adobe Illustrator - векторный графический редактор, позволяющий создавать разнообразный контент: от мелких значков до рекламных щитов, от оформления сайтов до иллюстраций для книг.
Выбор этих средств разработки обусловлен их профессиональным функционалом, а также наличием навыков для работы с данным программным обеспечением (ПО), полученных в процессе обучения в университете.
При разработке приложений Android используется Java - один из наиболее распространенных языков программирования, однако при разработке необходимы также файлы XML. Язык Java - это современный язык, который работает на трех фронтах: портативность, скорость и безопасность. Поэтому он является доминирующим языком в мире программирования более 15 лет. Язык программирования Java, разработанный компанией Sun Microsystems под руководством светил интернета Джеймса Гослинга и Билла Джоя, был создан как машиннонезависимый язык программирования, который достаточно безопасен для сетевых применений и достаточно мощен, чтобы заменить родной исполняемый код [13].
Язык Java при разработке android-приложений используется не в полнофункциональном варианте, а только в небольшом подмножестве, в регистровой виртуальной машине Dalvik. В этом подмножестве не используются те классы Java, которые не могут быть применены или не имеют смысла при разработке приложений на мобильные устройства. Dalvik оптимизирован для низкого потребления памяти, это нестандартная регистр-ориентированная виртуальная машина, хорошо подходящая для исполнения на процессорах RISC-архитектур, часто используемых в мобильных и встраиваемых устройствах, таких как коммуникаторы и планшетные компьютеры. (Большинство виртуальных машин, используемых в настольных системах, являются стекориентированными, включая стандартную виртуальную машину Java). Программы для Dalvik пишутся на языке Java. Несмотря на это, стандартный байт-код Java не используется, вместо него Dalvik исполняет байт-код собственного формата [10].
В версиях, начиная с Android 4.4 Kitkat, имеется возможность переключиться с Dalvik на более быстрый Android Runtime (ART). В Android 5.0 был полностью заменен ART. В отличие от Dalvik, который использует JIT-компиляцию (во время выполнения приложения), ART компилирует приложение во время его установки. За счет этого планируется повышение скорости работы программ и одновременно увеличение времени работы от батареи. Недостатком является более долгая загрузка устройства. Для обеспечения обратной совместимости ART использует тот же байт-код, что и Dalvik [7].