Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный_практикум.doc
Скачиваний:
74
Добавлен:
15.11.2019
Размер:
45.35 Mб
Скачать

6. Завершающая часть

Компилируем приложения (Release) и запускаем. В качестве основного запускаемого объекта решения (Запускаемый проект) ставим приложение сервер. Стартуем сервер нажатием кнопки «Запуск». Запускаем копию приложения клиента. Вводим имя и жмём «Войти в чат»:

Рис. 6. 1. Результат работы приложения клиента после запуска сервера: вход первого пользователя в чат и отсылка сообщения

Запускаем второй клиент, входим в чат и пишем сообщение:

Рис. 6. 2. Результат работы приложения клиента после запуска сервера: вход второго пользователя в чат и его действия

Закрывает первый клиент, запускаем третий клиент и пишем со второго и третьего клиентов:

Рис. 6. 3. Результат работы приложения клиента после запуска сервера: вход третьего пользователя в чат и его действия

7. О приложении к Лабораторной работе № 16

Получившиеся программы (LWP16WCF.exe, LWP16WCFClient.exe, LWP16-ChatServer.exe и LWP16-ChatClient.exe), собранные из кусков кода приведённых в данной лабораторной работе, можно загрузить по ссылке в конце этого материала (сслыка доступна в программном продукте).

Приложение № 1: Исходный код приложения WCF, а также клиента к нему и всех сопровождающих файлов с кодом приведён по ссылке в конце этого материала (сслыка доступна в программном продукте).

Приложение № 2: Исходный код программы-сервера чата и всех сопровождающих файлов с кодом приведён по ссылке в конце этого материала (сслыка доступна в программном продукте).

Приложение № 3: Исходный код программы-клиента чата и всех сопровождающих файлов с кодом приведён по ссылке в конце этого материала (сслыка доступна в программном продукте).

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

17. Лабораторная работа № 17: Знакомство с Silverlight

Лабораторная работа № 17: Знакомство с Silverlight

Содержание

  1. Вводная часть

  2. Создание приложения Silverlight

  3. Модификация приложения Silverlight: первые шаги и полноэкранный режим

  4. Модификация приложения Silverlight: простой проигрыватель MP3-файлов

  5. Модификация приложения Silverlight: работа с анимацией

  6. Завершающая часть

  7. О приложении к Лабораторной работе № 17

1. Вводная часть

В этой работе будет рассмотрена работа с подтипом приложений доступных для создания в Visual Studio 2010, а именно Приложение Silverlight. Что такое Silverlight?

Рис. 1. 1. Логотип технологии Microsoft Silverlight

Microsoft Silverlight — это программная платформа, включающая в себя плагин (надстройку) для браузера, который позволяет запускать приложения, содержащие анимацию, векторную графику и аудио-видео ролики, что характерно для RIA (Rich Internet Application).

Silverlight предоставляет графическую систему, схожую с Windows Presentation Foundation, и объединяет мультимедиа, графику, анимацию и интерактивность в одной программной платформе. Он был разработан, чтобы работать с XAML и с языками .NET.

Приложения Silverlight могут быть написаны на любом языке программирования, включённом в платформу .NET. Как таковые, все инструменты разработки которые могут быть использованы для разработки на .NET, также могут работать c Silverlight.

Как уже было сказано выше Silverlight это RIA-приложение.

Rich Internet Application ( «Насыщенное, «богатое» Интернет-приложение») — это приложение, доступное через Интернет, насыщенное функциональностью традиционных настольных приложений, которое предоставляется либо уникальной спецификой браузера, либо через плагин, либо путём «песочницы» (виртуальной машины).

Как правило, приложение RIA:

  • передаёт веб-клиенту необходимую часть пользовательского интерфейса, оставляя большую часть данных (ресурсы программы, данные и пр.) на сервере;

  • запускается в браузере и не требует дополнительной установки ПО;

  • запускается локально в среде безопасности, называемой «песочница» (sandbox).

В настоящее время тремя наиболее распространенными подобными платформами являются Adobe Flash, Java и Microsoft Silverlight.

Главное что нужно понять, Silverlight это веб-технология, позволяющая разнообразить возможности веб-приложений. Silverlight в отличие от WPF более простая в применении и более «массовая» технология.

Поддержка Silverlight реализована для всех популярных Windows-систем (Windows XP, Vista и 7), а также для большинства веб-браузеров. То есть технология не узкоспециализированная как, например WPF и достаточно распространена в настоящее время.

Чтобы больше понять, что за «зверь» этот Silverlight, приведём таблицу сравнения технических возможностей некоторых RIA:

Возможности

HTML4, XHTML

HTML5

Silverlight

Adobe Flash

JavaFX

Native Client

Многопоточность

Да

Да

Нет

Да

Двумерная графика

Да

Да

Да

Да

Трёхмерная графика

Неофициально и небезопасно

Да

Да

Да

Поддержка сокетов

Да

Да

Да

Да

Асинхронные HTTP запросы

Да

Да

Да

Да

Да

Синхронные HTTP запросы

Да

Да

Да

Нет

Модификация HTTP заголовков запроса

Да

Да

Да

Частично

Да

Анализ HTTP заголовков ответа

Да

Да

Да

Нет

Да

Постоянное HTTP/1.1 соединение

Нет

Да

Да

Нет

Нет

Хранилище данных

Нет

Да

Да

Да

Да

Нет

Поддержка «cookie»

Да

Да

Да

Да

Да

Нет

Таблицы стилей

Да

Да

Да

Да

Да

Пользовательские шрифты

Нет

Да

Да

Да

Да

Таймеры

Да

Да

Да

Да

Да

Поддержка аудио

Нет

Да

Да

Да

Да

Нет

Поддержка видео

Нет

Да

Да

Да

Да

Поддержка доступа к DOM браузера

Да

Да

Да

Да

Нет

Нет

Поддержка исполнения скриптов JavaScript

Да

Да

Да

Да

Нет

Нет

Поддержка вызова кода RIA из JavaScript

-

-

Да

Да

Нет

Нет

Поддержка динамической подгрузки кода

Да

Да

Да

Да

Да

Доступ к файловой системе

Да

Да

Частично

Да

Нет

Браузерная поддержка технологий:

Браузер

HTML5+JavaScript

Silverlight

Adobe Flash

JavaFX

Native Client

Internet Explorer 6

Нет

Да

Да

Да

Нет

Internet Explorer 7

Нет

Да

Да

Да

Нет

Internet Explorer 8

Нет

Да

Да

Да

Нет

Internet Explorer 9

Да

Да

Да

Да

Нет

FireFox 5 (Windows)

Нет

Да

Да

Да

Нет

FireFox 3.6

Нет

Moonlight

Да

Да

Нет

FireFox 4

Да

Да

Да

Да

Нет

Opera 9

Нет

Да

Да

Да

Нет

Opera 10\11 (Windows)

Да

Да

Да

Да

Нет

Opera 10\11 (Linux)

Да

Moonlight

Да

Да

Нет

Google Chrome (>9.0)

Да

Да

Да

Да

Да

Safari (>4.0)

Да

Да

Да

Да

Нет

Seamonkey 2.0

Нет

Да

Да

Да

Нет

Symbian Explorer

Нет

Да

Частично

Нет

Нет

Первая версия Silverlight, выпущенная в мае 2007 года, была далека от завершения и фактически не поддерживала .NET-код совсем. Вся основная разработка велась на языке JavaScript, а также присутствовала поддержка небольшого подмножества языка XAML, использовавшегося для описания интерфейса приложений для Silverlight.

Рис. 1. 2. Архитектура приложения

Silverlight 1.0

Рис. 1. 3. Архитектура приложения Silverlight 2.0

Версией поставляемой «по умолчанию» вместе с Visual Studio 2010 стала Silverlight 3.

18 марта 2009 года на конференции «MIX09» в Лас-Вегасе Microsoft продемонстрировала бета-версию. 10 июля 2009 года в ходе мероприятия «See the Light» Microsoft объявила об официальном выпуске RTM версии, а вскоре была выпущена и окончательная версия (через девять месяцев после выхода второй).

В новую версию были добавлены новые элементы управления и различные возможности, а уровень данных был расширен для обеспечения стабильной основы для сценариев, более ориентированных на бизнес-процессы. В то же время, существующий уровень медиа был расширен за счёт добавления поддержки новых форматов и эффектов (более известных как «пиксельные шейдеры»). На уровне пользователя стало возможным переносить двухмерные элементы в трёхмерное пространство (что иногда называется «псевдо-3D» или «2,5D»). Анимация продвинулась ещё дальше, обеспечивая более плавное и приближенное к реальному воспроизведение. Некоторые шаги были предприняты и в области использования аппаратного ускорения (что само по себе является настоящей проблемой на смешанных платформах, как например, на поддерживаемых Silverlight).

Среди особенностей новой версии:

  • Поддержка устройств с multitouch-интерфейсом (устройства, распознающие множественные касания сенсора).

  • Поддержка форматов H.264, AAC и MPEG-4.

  • Поддержка аппаратного ускорения при работе с трехмерной графикой. Это позволяет задействовать потенциал графического процессора и снизить нагрузку на центральный процессор.

В целом Silverlight представляет собой урезанный вариант Windows Presentation Foundation, не требующий наличия .NET Framework. При этом возможности приложений Silverlight почти безграничны, весь недостающий функционал можно реализовать в виде модулей, используя Silverlight 3 SDK.

Также в Silverlight 3 был впервые представлен функционал, получивший название «вне браузера» («out-of-the-browser») (OOB). Реализация данного функционала обладала серьезными недостатками: например, OOB-приложения всё ещё не могли получать какие-либо дополнительные права, что весьма ограничивало их действия. Также не было возможности настройки окна OOB-приложения.

Silverlight 4 (Silverlight 4 SDK) на данный момент являются последней поддерживаемой версией Silverlight для Visual Studio 2010. Для установки можно воспользоваться встроенным в среду разработки средством: Установщик веб-платформы 3.0. Дополнительные инструменты для версии Silverlight 4, если таковые не были установлены ранее можно найти на вкладке Продукты -> Средства: Средства Silverlight 4 для Visual Studio 2010 (Англий) от 17.05.2011. Для версии будущей «пятой» версии: Silverlight 5 Tools for Visual Studio 2010 (Английский) от 16.12.2011.

Для того, чтобы узнать какая на данный момент в ОС установлена версия Silverlight можно воспользоваться средством Конфигурация Microsoft Silverlight («по умолчанию»: Пуск -> Все программы -> Microsoft Silverlight):

Рис. 1. 4. Окно «Конфигурация Microsoft Silverlight»

Также это окно можно вызвать, если запустить Silverlight-приложение и нажать правую кнопку мыши в области этого приложения.

Что будет представлять из себя приложение, разрабатываемое в данной лабораторной работе?

Рассмотрим самые простые примеры работы с Silverlight-приложением. Разделим данную работу на три части.

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

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

Во второй части будет создан полноценный проигрыватель MP3-файлов. «Трэки» будут заранее подготовлены и сохранены в маленькой базе данных. Проигрыватель будет поддерживать возможность воспроизведения, остановки воспроизведения, паузы на текущем месте воспроизведения, выключение и включение звука, изменения уровня громкости и переключение баланса на левый или правый наушник (колонку) (если звуковое устройство ОС настроено и поддерживает режим воспроизведения стереозвука).

Третья часть работы будет демонстрировать работу с анимацией движения объекта в приложении Silverlight. Будет продемонстрировано несколько простых режимов обработки анимации простых объектов.