Опубликован: 27.12.2011 | Доступ: свободный | Студентов: 1334 / 35 | Оценка: 4.44 / 4.44 | Длительность: 12:31:00
Лекция 8:

Использование расширений для создания дополнительного функционала в приложениях

Аннотация: Описывается подход к созданию дополнительных функций в приложениях LightSwitch за счет создания расширений. Рассматриваются особенности различных типов расширений. Приведено описание наиболее интересных расширений, расположенных в галерее Visual Studio, а также механизмы поиска, загрузки, установки и использования расширений. Описываются особенности создания расширений для LightSwitch с использованием специального набора инструментов Visual Studio LightSwitch 2011 Extensibility Toolkit.

Цель лекции: изучить понятие расширения и его роль в создании дополнительных функциональных возможностей приложения LightSwitch. Ознакомиться с наиболее интересными расширениями из галереи Visual Studio, относящихся к категории LightSwitch. Рассмотреть процесс создания расширений с использованием Visual Studio LightSwitch 2011 Extensibility Toolkit.

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

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

Расширения не ограничиваются только специальными элементами управления. Как расширения распространяются бизнес-типы, провайдеры для источников данных, шаблоны экранов, темы и специальные оболочки. Это создает из LightSwitch мощный продукт без ограничений и когда требуется дополнительная функциональность достаточно либо скачать необходимое расширение из Visual Studio gallery, либо купить необходимое расширение и установить его на компьютер и сервер через Extensions Manager.

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

Имеются следующие основные типы расширений LightSwitch:

  • Бизнес-тип – позволяет создать обертку над базовыми типами, обеспечивая дополнительный контроль данных и методы их отображения, а также механизм их сохранения с помощью допустимых LightSwitch типов. Также с бизнес- типом может идти специальный элемент управления, обеспечивающий удобное его отображение.
  • Пользовательский элемент управления – элемент управления Silverlight с дополнительными атрибутами, позволяющими его интегрировать и использовать в LightSwitch.
  • Источник данных – специальный адаптер, реализованный в виде класса и позволяющий работать с нестандартным источником данных.
  • Шаблон экрана – используется для создания экранов с раскладкой и связями, отличными от стандартных шаблонов.
  • Оболочка – реализует оболочку с отличающейся от стандартной раскладкой и возможностями, например, можно разработать оболочку, ориентированную на использование сенсорных экранов.
  • Тема – реализует отличающиеся от стандартного цветовое и стилевое оформление приложения и используемых элементов управления.

Рассмотрим подробнее каждый из видов расширений с типовыми примерами их представления и использования.

Темы и оболочки.

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

Тема представляет собой единый набор настроек для шрифтов и цветов элементов интерфейса с учетом их гармонической сочетаемости. Изменяя тему можно подобрать наиболее удобный для пользователя вид. Аналогом тем в веб-разработке являются каскадные таблицы стилей (CSS).

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

Особая оболочка приложения LightSwitch

Рис. 15.1. Особая оболочка приложения LightSwitch

Следует отметить следующие изменения в интерфейсе по сравнению с его стандартным видом:

  • Главное меню представлено в виде текста, также меню продублировано в нижней части в виде пиктограмм.
  • Группы и ссылки на окна расположены в нижней части экрана.
  • Меню экрана расположено в нижней части активного экрана

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

Бизнес-типы.

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

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

Создание бизнес-типа для таких значений является одним из способов обеспечения их единообразного использования внутри организации.

Расширение на базе источников данных является оболочкой над . Net WCFRIA службой. Оформление их в виде расширения упрощает механизм установки и развертывания. Создание такого расширения может быть полезным в случае, когда известна точная структура источника данных, а также для получения данных другими типами расширений.

В более общих случаях, когда структура и отношения между данными неизвестны, а источник не относится к стандартным, можно использовать сторонние расширения, например, ряд оригинальных поставщиков данных от компании RSSBus.

Например, поставщик данных Google от RSSBus дает разработчикам возможность легко подключать к популярным службам Google, включая Gmail, Google Docs, Календарь Google, Google Talk и др.