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

Исследование качества сборки приложений под операционную систему android различными компиляторами Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
240
26
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Нарожный Виталий Васильевич, Нарожная Екатерина Витальевна

Оценивается качество сборки приложения тремя компиляторами: Android Development Tools, Android Studio 2 и Visual Studio 2015. В качестве критериев выбираются быстродействие и размер полученных приложений. Для чистоты эксперимента описываются три приложения в каждой среде. Приложения реализуют простейший алгоритм поиска простых чисел.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ASSESSMENT QUALITY ASSESSMENT OF THE APPLICATIONS FOR OPERATING ANDROID SYSTEM VARIOUS COMPUTERS

The quality of the application's build is assessed by three compilers: Android Development Tools, Android Studio 2 and Visual Studio 2015. The criteria determine the speed and size of the applications received. For the purity of the experiment, three applications are described in each environment. Applications implement the simplest algorithm for finding prime numbers.

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

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ J^i

УДК004.45

ИССЛЕДОВАНИЕ КАЧЕСТВА СБОРКИ ПРИЛОЖЕНИЙ ПОД ОПЕРАЦИОННУЮ СИСТЕМУ ANDROID РАЗЛИЧНЫМИ КОМПИЛЯТОРАМИ

НАРОЖНЫЙ В.В., НАРОЖНАЯ Е.В._

Оценивается качество сборки приложения тремя компиляторами: Android Development Tools, Android Studio 2 и Visual Studio 2015. В качестве критериев выбираются быстродействие и размер полученных приложений. Для чистоты эксперимента описываются три приложения в каждой среде. Приложения реализуют простейший алгоритм поиска простых чисел.

Введение

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 (в отличие от рекомендуемого разработчиками Android языка программирования Java, использовался язык программирования С# [7]), которые можно было самостоятельно дополнительно встроить в более ранние версии Visual Studio. В Visual Studio 2015 (VS15) Xamarin включен как один из основных инструментов, что представляет обоснованный интерес в свете покупки компании. Можно предположить, что Microsoft готов свернуть попытки занять рынок мобильных операционных систем для смартфонов и планшетов своей операционной

системой Windows Phone, которая явно не в состоянии отвоевать позиции у Android и iOS. Полное описание исследования приведено на электронном ресурсе [8].

1. Цель исследования

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

Цель и задачи исследования. Цель данного исследования - оценить качество сборки приложения тремя различными компиляторами: ADT, AS2 и VS15.

Для достижения поставленной цели необходимо решить следующие задачи:

- выбрать критерии оценки качестве (быстродействие и размер полученных приложений); - для чистоты эксперимента написать три приложения на ADT, AS2 и VS15, где реализован простейший алгоритм поиска простых чисел (рис.1);

Рис. 1. Алгоритм поиска простых чисел

- в качестве вывода данных использованы время начала работы, время окончания работы и количество (quantity) найденных простых чисел для контроля правильности работы каждого приложения;

- для минимизации возможного воздействия абстракции ООП [9] максимально использовать базовые команды языков Java и C#, а также минимизировано использовать средства ООП;

- для чистоты эксперимента не использованы параллельные потоки, что подвешивает интерфейс на все время поиска.

Таким образом, при поиске относительно большого количества простых чисел (в данных примерах в диапазоне от 3 до limit) можно считать оценку качества сборки приложений адекватной поставленной.

2. Коды программ и интерфейсы пользователей

С учетом всего сказанного были созданы три приложения на ADT, AS2 и VS15. Во всех трех приложениях реализованы одинаковые интерфейсы с использованием файлов данных XML (рис.2) и стилей по умолчанию, характерных для каждой среды.

[d| activityjnain.xml [7j MainActivityjava

1 <LinearLayout xmlns:android-"http://schemas.android

2 android: layout width "fit l t"

android:layout_height="/i LLparent"

4 android:orientation="verticai." >

5 <TextView

android \id-"$rid/tey.tview0" android:layout_width="motch_parsnt" android:layQut_height="nTap_content" {!; 9 android : text-"Search prime numbers to " />

&10 <EditText

11 android :id="^fid/eiiit7e>rti "

12 android:layout_width-"motch_pDrent"

13 android:layout_height="wrop_content" ¿614 android:text="Input number" />

15 <TextView

16 android:id="§+id/textViewl" android: layout_width="j(iotch_parent"

18 android:layout_height="wrop_content"

&19 android :text="Start time " />

20 <Button

21 android:id="$+id/buttonl"

22 android:layout_width="motch_porent"

23 a n d ro id:1ayout height="ivrii;) contf-nt" &24 android:text="Stort" />

25 <TextView

26 android:id="@+id/textView2"

27 android:layout_width="motch_parent" 2S android:layout_height="wrap_content"

dS29 android :text="Stt>p time" />

30 <TextView

31 android: i d=d/tpxtVirul"

32 android: layout_widtb-"r»atch_parcr]t" android: layout_height="i-;rap_content"

&34 android:text="Quantity prime number" />

35 кА1пеаг1ауо1Л>

Рис. 2. ХМЬ-файл данных АОТ

После компиляции все установочные файлы имеют расширение арк (рис.3). Находятся на компьютере в соответствующих папках. Файлы необходимо перенести на устройство для проведения исследований.

1мя Дата изменения Тип

| fmdprimeas2-debug,apk 25.04.201612:46 Файл "АРК1 Рис. 3. Инсталляционный файл APK

Приложения были написаны с учетом особенностей каждой среды и языков Java (рис.4) и C# (рис.5).

package com .example .findprimenumberseclipse.; public class MainActiuity extends Activity TextView textViewl,textView2,textView3;

protected void onCreate(Bundle savedlnstanceState) {

setContentView(R.layout.activity^main); button=(Button)findViewById(R.id.buttonl);

textViewl=(TextViett)findViewById(R. id. textfuwl); textview2=^(TextView)f indviewBy!d(R.: li.'tix'VI< „?); textviewi- (Textview)f incfViewByld (R. id. textview3); editText-{EditText)findViewById(R. id. editTerrtl) j

int sear ch ToT h eNumber=Integer. pars edit Text

. get Text () ,toString()), quantityPriroeNumber-lj

textViewl.setTextC"+c.get(Calendar.HOLiR)+°:"+ c. get (Calendar .М1Ж/ГЕ)+": "+c. get (Calendar. SECOND));

textViewi.setText(""+c,get(Calendar.HOUR)*":"

+c. get (Calendar. МЛИЯ£)+": "+c. get (Calendar. SECOND)); textViewB.setText("Quantity prime number: "

Рис.4. Программа, написанная на Java

{[Activity{Label = "fippl", MainLauncher - true, { TextView textVievl, textViev?, textView3;

protected override void OnCreate(Bundle bundle)

Set Co nten tView(Reaource.Layout.Main)' button - FindView3yld<3utton>(Resource.Id.buttonl); textViewl-FindViewBylcKTextView>(Resource.Id.textViewl); textview2 - FindViewById<TextView>(Resource,Id.textView2); textView3 - FindViewById<TextViev>(Resource.Id.textView3); editleKL = FindVievByld-tEditlext?(Resource.Id.editlextl) ;

{ int searchToIbeNumbei: » Int32,Parse((

(EditText)editText).Text)t quantityPrimeMurcber = textVtewl. Text = string. Format (DateTuae.

for (int i = i < searchToTbeNuirber; i ++: textview2,Text = string.Format(DateTime.

Рис.5. Программа, написанная на С#

3. Установка и исследование

Все установочные файлы для OS Android имеют расширение APK. Для установки приложений необходимо зайти в настройки устройства и найти пункт «Разрешить установку из неизвестных источников» (на разных устройствах этот пункт может иметь разное местоположение и название, но, как правило, это в разделе «Безопасность»). Установить галочку на разрешение. Затем закачать установочные файлы и поочередно сделать на них «тач». Приложения установятся на устройство (рис.6). В данном исследовании использовано устройство Galaxy Ace 3 GT-S7272.

Рис.6. Иконки приложений на устройстве

Теперь можно зайти в «Настройки» - «Диспетчер приложений» и посмотреть размеры, которые занимают приложения в памяти устройства ADT (рис.7), AS2 (рис.8), VS15 (рис.9).

Рис. 7. Размер приложения от компилятора ADT а ±4, ШТ1Ил||100%|13:12

К Сведения о приложении

FindPrimeNumberAS

Версия 1.0

Принудит, остановить

Удалить

V Выводить уведомления Память

Всего [ 3.61 Мб ]

Приложение 3,61 Мб

Рис. 8. Размер приложения от компилятора А82

По требованию издательства цвета, на приведенных скринах, были обращены. Как можно видеть, приложение после установки занимает 1,01 Мб.

ОН ШТйН^юо»! 13:06 К ^р} Сведения о приложении

FindPrimeNumber.vS

Версия 1.0

Принудит, остановить

Удалить

V Выводить уведомления Память

[5,43 Мб] 5,42 Мб

Всего

Приложение

Рис. 9. Размер приложения от компилятора У815

Итоговый результат можно увидеть на диаграмме (рис.10).

Рис.10. Диаграмма размера установочных файлов установленных приложений

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Проверить качество работы компилятора по критерию занимаемого объема внутренней памяти достаточно быстро. Задача по проверке скорости работы приложений занимает значительно больше времени. Для чистоты эксперимента каждый запуск проводился после предварительной очистки памяти. Процесс работы приложений занимал несколько минут (в зависимости от вводимого значения limit). Итоговые результаты приведены на рис. 11.

Выводы

Научная новизна. Предложен метод оценки качества сборки приложения тремя компиляторами: Android Development Tools, Android Studio 2 и Visual Studio 2015. Обоснован выбор критериев (быстродействие и размер полученных приложений) для чистоты эксперимента.

Практическаяценность. Несмотря на огромный опыт компании Microsoft по созданию средств программирования, следует отметить, что по обоим критериям средства разработки приложений на Java лучше. Оба параметра в пользу средств ADT и AS2. В свою

55

очередь, ADT значительно опережает по размерам установленного приложения. Возможно, AS2 и VS15 можно оптимизировать по этому параметру, но большинство разработчиков этим не занимается, а значит, создаются приложения с явно завышенными объемами включенных ресурсов в конечный продукт. Возможно, это не так заметно для больших приложений, но тут результат очевиден. Также не добавляют оптимизма процесс установки VS15 или AS2 (явно сложнее процесса установки ADT) и значительно более высокие требования к ресурсам компьютера.

limit ADT,сек AS2,ceK VS15,een

60000 9 9 10

SOOOO 16 16 IS

100000 25 25 27

120000 34 34 37

140000 47 47 51

160000 61 ei 66

180000 77 77 S3

200000 94 94 102

220000 112 112 122

и ,сек

с >мс £ t»oc LCiiimccí lmccí ыоссэ

Рис. 11. Показатели скорости работы приложений

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

Литература: l.Android: электронный ресурс. Точка доступа https://ru.wikipedia.org/wiki/Android_2.Java: елект-ронний ресурс. Точка доступу https://uk.wikipedia.org/ wiki/Java_3.Eclipse: електроний ресурс. Точка доступу https://uk.wikipedia.orgwiki/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/ 6Xamarin: электронный ресурс. Точка доступа https://ru.wikipedia.org/wiki/Xamarin_7.C#: електроний ресурс. Точка доступу https://ru.wikipedia.org/wiki/ C_Sharp_8.Полное описание исследований: електронний ресурс http://androidresearchua.blogspot.com/ 9.Абстрак-тный тип данных: електронний ресурс. Точка доступу https://ru.wikipedia.org/wiki/Абстрактный_тип_данных

Поступила в редколлегию 16.02.2016

Рецензент: д-р техн. наук, проф. Моисеенко В.И.

Нарожный Виталий Васильевич, канд. техн. наук, доцент кафедры Информационных технологий и мехатроники Харьковского национального автомобильно-дорожного университета. Научные интересы: исследование особенностей операционной системы Android. Адрес: Украина, 61000, Харьков, ул. Ярослава Мудрого, 25, тел.:+380508577597.

Нарожная Екатерина Витальевна, студентка кафедры Информационных технологий и мехатроники Харьковского национального автомобильно-дорожного университета. Научные интересы: исследование особенностей операционной системы Android. Адрес: Украина, 61000, Харьков, ул. Ярослава Мудрого, 25, тел.:+380667487704.

i Надоели баннеры? Вы всегда можете отключить рекламу.