вторник, 26 апреля 2016 г.

ADT vs Android Studio 2 vs Visual Studio 2015 Xamarin




Исследование качества сборки приложений под операционную систему Android различными компиляторами

В данной работе проводится оценка качества сборки приложения тремя компиляторами: Android Development Tools, Android Studio 2 и Visual Studio 2015. В качестве критериев выбраны: быстродействие и размер полученных приложений. Для чистоты эксперимента написаны три приложения в каждой среде. Приложения реализуют простейший алгоритм поиска простых чисел.
The study build quality applications for the Android operating system different compilers

The problem of assessing the quality of the application build three compilers: Android Development Tools, Android Studio 2 and Visual Studio 2015. As evaluation criteria selected speed and size of the application. For the purity of the experiment three applications written for each compiler. The evaluation of applications on devices Galaxy Ace 3 GT-S7272. In particular, the results obtained on based on the graphs depending on both criteria. The analysis obtained depending poperednы made conclusions about the build quality application three compilers.
Дослідження якості збірки додатків під операційну систему Android різними компіляторами

Розглянуто проблему оцінки якості збірки додатку трьома компіляторами: Android Development Tools, Android Studio 2 и Visual Studio 2015. Як критерії оцінки обрані швидкодія та розмір отриманих додатків. Для чистоти експерименту написані три додатки для кожного компілятори. Проведено оцінку додатків на пристроі Galaxy Ace 3 GT-S7272. Зокрема, наоснові отриманих результатів побудовані графіки залежності за обома критеріями. В результаті аналізу отриманої залежності зроблени попередны висновки про якості збірки додатку трьома компіляторами.

Введение

Android – операционная система (OS Android) для смартфонов, интернет-планшетов, электронных книг, цифровых проигрывателей, наручных часов, игровых приставок, нетбуков, смартбуков, очков Google, телевизоров и других устройств [1].
Классическим средством разработки приложений под OS Android является язык программирования Java [2], принадлежащий компании Oracle.
Рекомендованная Google программная среда разработки приложений на OC Android до декабря 2014 года была Eclipse [3] Android Development Tools (ADT). На сегодняшний день компания Google активно продвигает новую среду Android Studio 2 (AS2) [4], которая вышла на смену Android Studio c 07.04.2016.
В последнее время появились сообщения о покупке компанией Microsoft компании Xamarin [5]. Xamarin - американская компания в области разработки ПО. Занимается разработкой и поддержкой Mono и инструментов для разработки приложений на языке C# для iOS, Android, Windows, Mac [6]. 

 
Xamarin уже несколько лет создавала инструменты разработки под Android (где использовался язык программирования С# [7]), которые можно было встроить дополнительно в более ранние версии Visual Studio. В Visual Studio 2015 (VS15) Xamarin включен как один из основных инструментов, что представляет обоснованный интерес в свете покупки компании. Можно сделать предположение, что Microsoft готов свернуть попытки занять рынок мобильных операционных систем для смартфонов и планшетов своей операционной системой Windows Phone, которая явно не в состоянии отвоевать позиции у Android и iOS.
Цель исследования
Одной из наиболее сложных задач является оценка качества работы вычислительных устройств. Сложно оценить, какое вычислительное устройство лучше. Классически необходимо выбрать несколько критериев и создать условия, при которых другими критериями можно пренебречь. Тогда проведение исследований устройств по этим критериям можно считать адекватным. Только на основании этого исследования можно делать выводы о качестве. Наличие различных компьютерных архитектур, сред программирования, операционных систем заметно усложняет такую оценку.
В данной работе проводится оценка качества сборки приложения тремя компиляторами: ADT, AS2 и VS15. В качестве критериев выбраны быстродействие и размер полученного приложения. Для чистоты эксперимента написаны три приложения на ADT, AS2 и VS15. Реализован простейший алгоритм поиска простых чисел (рис.1). Простое число делится без остатка только на себя и единицу (2,3,5,7,11…). Перебираем каждое число i от 3 до limit. Делим его на все числа j от 2 до (i-1). Число 2 -простое число, его не вычисляем, чтобы не усложнять алгоритм. Каждый раз, когда находится простое число, инкрементируем переменную quantity. В качестве вывода данных использованы время начала работы, время окончания работы и количество (quantity) найденных простых чисел для контроля правильности работы каждого приложения.
Важно! Для минимизации возможного воздействия абстракции объектно-ориентированного программирования [8] максимально используются базовые команды языков Java и C#, а также минимизировано использование средств ООП. Более того для чистоты эксперимента не использованы даже параллельные потоки, что подвешивает интерфейс на все время поиска. При поиске относительно большого количества простых чисел (в данных примерах в диапазоне от 3 до limit), можно оценить именно вычислительные характеристики и, как следствие, качество работы компиляторов по ранее указанным критериям. 
 
Рис.1. Алгоритм поиска простых чисел
Коды программ и интерфейсы пользователей
С учетом всего сказанного были созданы три приложения на ADT, AS2 и VS15. Во всех трех приложения реализованы одинаковые интерфейсы с использованием файлов данных XML (рис.2) и стилей по умолчанию, характерных для каждой среды (рис.3). 
 
Рис.2.а XML-файл данных ADT 
 
Рис.2.б XML-файл данных AS2 
 
Рис.2.в XML-файл данных VS15 
 
Рис.3.а Интерфейс приложений со стилем по умолчанию ADT 
 
Рис.3.б Интерфейс приложений со стилем по умолчанию AS2 
 
Рис.3.в Интерфейс приложений со стилем по умолчанию VS15 
 
Рис.4.а Программа, написанная в ADT 
 
Рис.4.б Программа, написанная в AS2 
 
Рис.4.в Программа, написанная в VS15 
 
Рис.5.а Местонахождение установочного файла ADT 

Рис.5.б Местонахождение установочного файла AS2


Рис.5.в Местонахождение установочного файла VS15
 
Установка и исследование
Все установочные файлы для OS Android имеют расширение APK. Для установки приложений необходимо зайти в настройки устройства и найти пункт «Разрешить установку из неизвестных источников» (на разных устройствах этот пункт может иметь разное местоположение и название, но, как правило, это в разделе «Безопасность»). Установить галочку на разрешение. Затем закачать установочные файлы и поочередно сделать на них «тач». Приложения установятся на устройство (рис.6). В данном исследовании использовано устройство Galaxy Ace 3 GT-S7272. 
 
Рис.6. Иконки приложений на устройстве
Теперь можно зайти в «Настройки» - «Диспетчер приложений» и посмотреть размер, который занимает приложение в памяти устройства (рис.7) 
 
Рис.7.а Размер приложения от компилятора ADT 
 
Рис.7.б Размер приложения от компилятора AS2 
 
Рис.7.в Размер приложения от компилятора VS15
Итоговый результат можно увидеть на диаграмме (рис.8). 
 
Рис.8. Диаграмма размера установленных приложений 
 
Рис.9. Показатели скорости работы приложений
Выводы
Несмотря на огромный опыт компании Microsoft по созданию средств программирования, следует отметить, что по обоим критериям средства разработки приложений на Java лучше. Оба параметра в пользу средств ADT и AS2. В свою очередь ADT значительно опережает по размерам установленного приложения. Возможно, AS2 и VS15 можно оптимизировать по этому параметру, но ведь большинство разработчиков этим не занимается, а значит, создаются приложения с явно завышенными объемами включенных ресурсов в конечный продукт. Возможно, это не так заметно для больших приложений, но тут результат очевиден. Также не добавляют оптимизма процесс установки VS15 или AS2 (явно сложнее процесса установки ADT) и значительно более высокие требования к ресурсам компьютера.
Учитывая все вышесказанное, явно прослеживается очередной виток от качества сборки приложения к увеличению числа различных фишек в средах разработки.
Список литературы
1.Android: электронный ресурс. Точка доступа https://ru.wikipedia.org/wiki/Android
2.Java: електроний ресурс. Точка доступу https://uk.wikipedia.org/wiki/Java
3.Eclipse: електроний ресурс. Точка доступу https://uk.wikipedia.org/wiki/Eclipse
4.Android Studio: електроний ресурс. Точка доступу https://ru.wikipedia.org/wiki/Android_Studio
5.Microsoft to acquire Xamarin and empower more developers to build apps on any device: электронный ресурс. Точка доступа http://blogs.microsoft.com/blog/2016/02/24/microsoft-to-acquire-xamarin-and-empower-more-developers-to-build-apps-on-any-device/
6.Xamarin: электронный ресурс. Точка доступа https://ru.wikipedia.org/wiki/Xamarin
7.C#: електроний ресурс. Точка доступу https://ru.wikipedia.org/wiki/C_Sharp
8.Абстрактный тип данных: електроний ресурс. Точка доступу https://ru.wikipedia.org/wiki/Абстрактный_тип_данных

Комментариев нет:

Отправить комментарий