Научная статья на тему 'Модернизация методики разработки мобильных приложений для платформы Windows Phone 8'

Модернизация методики разработки мобильных приложений для платформы Windows Phone 8 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
376
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕТОДИКА / METHODIC / МОБИЛЬНАЯ ПЛАТФОРМА / MOBILE PLATFORM / МОБИЛЬНОЕ УСТРОЙСТВО / MOBILE DEVICE / ПРИЛОЖЕНИЕ / APPLICATION / РАЗРАБОТКА / DEVELOPMENT / MICROSOFT WINDOWS PHONE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Воинов Никита Владимирович, Александрова Ольга Всеволодовна, Котлярова Лина Павловна

Описана модернизированная методика создания приложений для современных мобильных устройств, работающих на новой операционной системе компании Microsoft – Windows Phone 8. Данная методика обучает основным принципам разработки приложений и использованию наиболее важных возможностей платформы.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Воинов Никита Владимирович, Александрова Ольга Всеволодовна, Котлярова Лина Павловна

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

Modernization of the methodic of Windows Phone 8 mobile applications development

The paper describes the modernized methodic of an applications development for modern mobile devices working on new operating system of Microsoft Corporation – Windows Phone 8. The methodic teaches the main principles of applications development and usage of the most important platform’s capabilities.

Текст научной работы на тему «Модернизация методики разработки мобильных приложений для платформы Windows Phone 8»

УДК 681.3.068

Н.В. Воинов, О.В. Александрова, Л.П. Котлярова

модернизация методики разработки мобильнь1х приложений для платформы windows phone 8

N.V. Voinov, O.V. Aleksandrova, L.P. Kotlyarova

modernization of the methodic of windows phone 8 mobile applications development

Описана модернизированная методика создания приложений для современных мобильных устройств, работающих на новой операционной системе компании Microsoft — Windows Phone 8. Данная методика обучает основным принципам разработки приложений и использованию наиболее важных возможностей платформы.

МЕТОДИКА. МОБИЛЬНАЯ ПЛАТФОРМА. МОБИЛЬНОЕ УСТРОЙСТВО. ПРИЛОЖЕНИЕ. РАЗРАБОТКА. MICROSOFT WINDOWS PHONE.

The paper describes the modernized methodic of an applications development for modern mobile devices working on new operating system of Microsoft Corporation — Windows Phone 8. The methodic teaches the main principles of applications development and usage of the most important platform's capabilities.

METHODIC. MOBILE PLATFORM. MOBILE DEVICE. APPLICATION. DEVELOPMENT. MICROSOFT WINDOWS PHONE.

Современный рынок мобильных устройств требует подготовки специалистов, способных быстро осваивать и создавать новые приложения под новые платформы. Для этих целей в Институте информационных технологий и управления СПбГПУ для специалистов по направлению «Программная инженерия» разработан новый курс [1], в основе которого методика создания приложений для мобильной платформы Windows Phone 7 [2], являющейся на тот момент наиболее перспективной. Однако в октябре 2012 г. вышло второе поколение операционной системы Windows Phone от Microsoft — Windows Phone 8 [3], что потребовало модернизации разработанной методики для отражения особенностей и новых функций мобильной платформы.

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

1. Варианты разметки StackPanel, Grid и Canvas. С помощью данных элементов

управления происходит группировка и позиционирование остальных элементов в xaml [4]. StackPanel выстраивает внутренние элементы последовательно по вертикали или горизонтали. Grid позволяет разделить рабочую область на строки и столбцы. Canvas предоставляет возможности абсолютного позиционирования внутренних элементов по координатам.

2. Основные элементы управления: кнопки, текстовые поля и блоки, поля, изображения, списки и т. п. Данные элементы входят в состав большинства приложений под Windows Phone 8. Они имеют различные атрибуты, такие, как цвет фона, толщина и цвет окантовки, размер, стиль и цвет шрифта, выравнивание и т. п. Каждый из элементов может иметь обработчики событий. Например, нажатие на кнопку, выделение нового элемента в списке, движение пальцем по Canvas.

3. Контекст ввода текстовых полей. При попадании фокуса на текстовое поле в Windows Phone 8 появляется клавиатура для ввода. С помощью контекста ввода можно

4

настраивать параметры кнопок на клавиатуре. Например, можно задать, чтобы на клавиатуре были только цифры или появились дополнительные кнопки «@» и «.com» и т. п. Также можно активировать и дезактивировать подсказки слов.

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

5. Элементы Pivot и Panorama. Данные элементы являются базовыми в Windows Phone 8. Они обеспечивают разделение информации по тематикам или представлениям. Pivot и Panorama имеют много общих черт: они оба используют несколько экранов для представления информации. Аналогом Pivot в приложениях Windows Forms являются вкладки. Panorama отличается тем, что задний фон и заголовок растягиваются на все используемые экраны. Также у элемента Panorama на каждой «вкладке» слегка видно соседнюю, что может побудить пользователя использовать прокрутку для просмотра всей информации.

6. Меню приложения. Меню (Applica-tionBar) позволяет получить быстрый доступ к определенным функциям приложения. Оно может содержать до четырех кнопок на главной панели и не более пяти на всплывающей (возможно и больше, но тогда пользователю необходимо будет использовать прокрутку). Меню не является частью дерева визуальных элементов страницы, поэтому не перекрывается появляющейся клавиатурой.

7. Элемент управления WebBrowser. Данный элемент позволяет в заданной области отображать HTML-страницы, в т. ч. загруженные из сети Интернет. На базе данного элемента можно разрабатывать кросс-платформенные приложения, однако в рамках методики обучения будет рассмотрена основная его функция — отображение интернет-страниц.

8. Задачи запуска и выбора. С помощью задач запуска можно открывать стандартные приложения Windows Phone 8, такие,

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

9. Элемент управления Map и определение местоположения. С помощью данного элемента (для его использования следует подключить библиотеку Microsoft.Phone. Controls.Maps) можно загружать и отображать карты местности. Map поддерживает масштабирование и режимы воздушный и дорожный. Кроме того, Windows Phone 8 поддерживает определение текущего местоположения средствами GPS, сотовой сети и Wi-Fi.

10. Акселерометр. Позволяет определять изменение положения телефона относительно одной из осей. Для доступа к возможностям акселерометра необходимо подключить к проекту библиотеку Micro-soft.Devices.Sensors.

11. Работа с HTTP посредством интерфейса WebClient. WebClient API позволяет разработчикам удобно работать с Get- и Post-запросами. Наилучшим образом подходит для загрузки документов из сети Интернет.

12. Хранение данных и привязка. Доступ к файловой системе из приложения ограничен изолированным хранилищем. Windows Phone 8 предоставляет различные средства для сохранения разного рода информации. Если требуется сохранить настройки приложения, можно воспользоваться классом IsolatedStorageSettings, который предоставляет доступ к словарю настроек. При этом данные хранятся в виде «ключ-значение». Для сохранения файлов следует воспользоваться классом IsolatedStorageFile. Для работы с большими объемами данных наилучшим образом подойдет локальная база данных. Общение приложения и базы осуществляется с помощью технологии Linq.

Важной особенностью Windows Phone 8 является привязка данных (binding). Она позволяет менять атрибуты одного элемента управления автоматически при изменении атрибутов другого. Так, например, можно выводить значение элемента Slider в текстовый блок.

13. Состояния приложения Dormant и Tombstoned. Dormant — спящее состояние, в которое переходит приложение при нажатии на кнопку «Пуск» во время работы. То есть приложение перестает быть активным, но продолжает находиться в памяти телефона. Вернуться к нему можно путем продолжительного нажатия на кнопку «Назад». Tombstoned — состояние захоронения, в которое приложение переходит из спящего состояния в случае нехватки памяти. При этом система может сохранить состояние приложения (одновременно сохраняются состояния только для пяти из них). Для пользователя вывод из Tombstoned аналогичен Dormant.

14. Фоновые службы. Позволяют приложению работать в фоне системы даже после закрытия. Службы могут выполнять различные функции, например, загружать в фоне файлы из сети Интернет (Background-TransferRequest) или проигрывать музыку (AudioPlayerAgent). Управление будильником и напоминаниями также выполняются средствами фоновых служб.

15. Живые тайлы (плитки). Тайлы — это ссылки на приложения, располагающиеся на главной странице Windows Phone 8. Они совмещают в себе функциональность обыкновенных ярлыков и виджетов. Тайлы могут иметь несколько изображений, сменяющих друг друга с течением времени. Также они могут нести в себе некоторую полезную информацию, например, о количестве пропущенных вызовов.

16. Push Notification. Удобное средство, позволяющее облачным сервисам общаться с приложением и уведомлять пользователя о каком-либо событии.

17. Анимация. Silverlight обладает большим набором стандартных классов, позволяющих анимировать приложения как с помощью временной шкалы, так и по ключевым кадрам. Анимация может быть описана в файле разметки xaml или непосредственно в коде. Удобным инструментом, позволяющим быстро создавать различные анимационные эффекты, является Microsoft Expression Blend.

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

научиться разрабатывать приложения для Windows Phone 8 разного уровня сложности.

Для иллюстрации применения модернизированной методики приведено описание лабораторной работы «Телефонная книга».

Задание: создать простую телефонную книжку для Windows Phone 8 с возможностью добавления новых контактов, просмотра, редактирования и удаления имеющихся.

Требования. В работе необходимо обеспечить: 1) навигацию между страницами; 2) основные элементы управления и разметки; 3) события; 4) контекст ввода; 5) меню приложения.

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

В самом начале кратко опишем структуру приложения: «Приложение, которое мы будем создавать, основано на четырех основных функциях управления данными — CRUD (create, read, update, delete). Оно будет состоять из двух окон: основного со списком контактов и окна редактирования/ добавления контактов». Таким образом, обучающиеся получают представление о том, как будет выглядеть разрабатываемое приложение: две страницы, между которыми будут организованы переходы и передачи информации; меню с возможностью выбора действия; элемент управления списком, работа с которым будет вестись в коде.

Далее перейдем к разработке интерфейса пользователя: к изменению файла разметки. Начнем с изменения заголовков и плавно перейдем к размещению элементов управления: «Откроем файл разметки главной страницы MainPage.xaml. Изменим текст названия приложения ApplicationTitle, например, на «КОНТАКТЫ»...

Внутрь объекта Grid с именем ContentPanel поместим элемент ListBox. Назовем его listContacts (атрибут Name необходим тем элементам, к которым будет обращение непосредственно из кода программы) и определим высоту списка (атрибут Height). Внутрь ListBox поместим не-

4

сколько первых контактов, которые будут доступны сразу после запуска приложения. Каждый элемент списка необходимо заключить в тег ListBoxItem. Поскольку контакт состоит из имени и номера телефона, добавим внутрь объекта ListBoxItem два текстовых блока TextBlock. Определим для них атрибуты FontSize (размер шрифта) и Margin (отступы). Так как данные блоки идут последовательно друг за другом, их необходимо заключить в тег StackPanel».

Выполнив указанные действия, обучающиеся смогут размещать элементы управления в xaml файлах, задавать атрибуты, позиционировать и объединять их.

Далее опишем создание меню:

«Создадим меню на главной странице нашего приложения. Для этого в самом конце файла MainPage.xaml уберем комментарии, в которые заключен тег phone:PhoneApplicationPage.ApplicationBar и его содержимое. Добавим еще один элемент shell:ApplicationBarIconButton и изменим текст (атрибут Text) для всех пунктов меню... Добавим обработчики нажатия на кнопки меню. Для этого добавим в теги shell:ApplicationBarIconButton атрибут Click.

При этом в файле MainPage.xaml.cs автоматически будут добавлены соответствующие пустые обработчики».

Таким образом, обучающиеся смогут не только создавать меню, но также добавлять новые элементы, изменять текст, объявлять события, которые будут происходить при нажатии на кнопки меню.

Далее опишем добавление новой страницы и редактирование ее пользовательского интерфейса:

«Добавим в проект приложения новую страницу — Windows Phone Portrait Page. Назовем ее PageEdit. Откроем файл PageEdit.xaml...

Элемент Grid состоит из части объявления строк и столбцов и части содержимого. Элементы содержимого должны включать атрибуты Grid.Column и Grid.Row, которые определяют индексы столбца и строки таблицы, в которой они находятся. Атрибут ShowGridLines позволяет сделать видимой или невидимой границу таблицы. Определим также вертикальное выравнивание элементов (VerticalAlignment) и размер шрифта (FontSize). Для текстового поля txtPhone определим контекст ввода (InputScope).

КОНТАКТЫ

Андреев Андрей

+79215555555

Иванов Иван ♦79114444444

Алексеев Алексей ♦79656666666

® ® ®

КОНТАКТЫ

добавление

Имя: Телефон:

Принять

Отмена

Приложение «Телефонная книга»

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

Для кнопок btnApply и btnCancel определим атрибут Click — обработчик кнопок».

Данная часть работы поясняет особенности добавления в проект новых Silverlight-страниц, использование элемента управления Grid, применение контекста ввода для

текстовых полей и объявление событий для элементов управления.

В результате описанных действий будет разработано приложение (см. рисунок).

Внедрение модернизированной методики в учебный процесс запланировано на 2013—2014 учебный год и рассчитано на студентов 4-5 курсов.

СПИСОК ЛИТЕРАТУРЫ

1. Воинов, Н.В. Методика разработки мобильных приложений для платформы Windows Phone 7 [Текст] / Н.В. Воинов, Л.П. Котлярова, И.Е. Поддубный // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. —СПб.: Изд-во Политехнического ун-та, 2012. -№ 4 (152). -С.102-105.

2. Microsoft Windows Phone 7 [Электронный

ресурс] / Режим доступа http://www.microsoft.com/ design/toolbox/tutorials/windows-phone-7/metro/

3. Microsoft Windows Phone 8 [Электронный ресурс] / Режим доступа http://www.microsoft. com/windowsphone

4. XAML [Электронный ресурс] / Режим доступа http://msdn.microsoft.com/en-us/library/ ms752059.aspx

REFERENCES

1. Voinov N.V., Kotliarova L.P., Poddubnyi

I.E. Metodika razrabotki mobil'nykh prilozhenii dlia platformy Windows Phone 7 [Methodic of WINDOWS PHONE 7 mobile applications development] / Nauchno-tekhnicheskie vedomosti SPbGPU. Informatika. Telekommunikatsii. Up-ravlenie [St. Petersburg State Polytechnical University Journal. Computer Science. Telecommunications and Control Systems]. —St. Petersburg: Izd-vo

Politekhnicheskogo un-ta, 2012. - № 4 (152). - S. 102-105. (rus)

2. Microsoft Windows Phone 7. Availiable http://www.microsoft.com/design/toolbox/tutori-als/windows-phone-7/metro/

3. Microsoft Windows Phone 8. Availiable http://www.microsoft.com/windowsphone

4. XAML. Availiable http://msdn.microsoft. com/en-us/library/ms752059.aspx

ВОИНОВ Никита Владимирович — доцент кафедры информационных и управляющих систем Санкт-Петербургского государственного политехнического университета, кандидат технических наук. 195251, Россия, Санкт-Петербург, ул. Политехническая, д. 29.

VOINOV, Nikita V. St. Petersburg State Polytechnical University. 195251, Politekhnicheskaya Str. 29, St. Petersburg, Russia.

АЛЕКСАНДРОВА Ольга Всеволодовна — старший преподаватель кафедры информационных и управляющих систем Санкт-Петербургского государственного политехнического университета. 195251, Россия, Санкт-Петербург, ул. Политехническая, д. 29.

ALEKSANDROVA, Olga V. St. Petersburg State Polytechnical University. 195251, Politekhnicheskaya Str. 29, St. Petersburg, Russia.

КОТЛЯРОВА Лина Павловна — старший преподаватель кафедры информационных и управляющих систем Санкт-Петербургского государственного политехнического университета. 195251, Россия, Санкт-Петербург, ул. Политехническая, д. 29.

KOTLYAROVA, Lina P. St. Petersburg State Polytechnical University. 195251, Politekhnicheskaya Str. 29, St. Petersburg, Russia.

© Санкт-Петербургский государственный политехнический университет, 2013

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