Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Разработка сервиса с применением Windows Communication Foundation (курсовая).pdf
Скачиваний:
88
Добавлен:
28.06.2014
Размер:
621.97 Кб
Скачать

Национальный Исследовательский Университет

МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ ИНСТИТУТ

Институт автоматикиивычислительной техники Кафедра прикладной математики

Разработкасервисас применением

Windows CommunicationКу совая работа Foundation

Курс «Проектирование программного обеспечения автоматизированных систем»

Выполнил студент 5 курса группы А-13-08 Захаров Антон

Преподаватель

Меньшикова Ксения Георгиевна

Научный руководитель Чибизова Наталья Владимировна

Москва, 2012

2

ВВЕДЕНИЕ

Windows Communication Foundation (WCF) – платформа нового поколения для построения распределенных систем, выпущенная в составе .NET Framework 3.0. Класс службы WCF не может существовать самостоятельно. Каждая служба WCF должна находиться под управлением некоторого процесса Windows, называемого хостовым процессом.

WCF делает возможным построение безопасных и надёжных транзакционных систем через упрощённую унифицированную программную модель межплатформенного взаимодействия. Комбинируя функциональность существующих технологий .NET по разработке распределённых приложений (ASP.NET XML

Web Services – ASMX, WSE 3.0, .NET Remoting, .NET Enterprise Services и System.Messaging), WCF предоставляет единую инфраструктуру разработки, при умелом применении повышающую производительность и снижающую затраты на создание безопасных, надёжных и транзакционных Web-служб нового поколения. Заложенные в неё принципы интероперабельности позволяют организовать работу с другими платформами, для чего используются технологии взаимодействия платформ, разрабатываемые на базе открытого исходного кода.

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

Сервис-ориентированная архитектура (service-oriented architecture, SOA) –

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

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

3

Принцип 1: Явное задание границ.

Этот принцип подчеркивает тот факт, что функциональность службы WCF выражается через четко определенные интерфейсы (т. е. описания каждого члена, его параметров и возвращаемых значений). Единственный способ, которым внешний клиент может связаться со службой WCF, – через интерфейс, при этом оставаясь в неведении о деталях её внутренней реализации.

Принцип 2: Автономность служб.

Говоря о службах, как об автономных сущностях, имеется в виду тот факт, что каждая служба WCF является (насколько возможно) отдельным «островом». Автономная служба должна быть независимой от проблем с версиями, развертыванием и установкой. Чтобы помочь в продвижении этого принципа, мы опять возвращаемся к ключевому аспекту программирования на основе интерфейсов. Как только интерфейс внедрен, он никогда не должен изменяться (или вы рискуете разрушить существующие клиенты). Когда требуется расширить функциональность службы WCF, просто напишите новый интерфейс, который моделирует необходимую функциональность.

Принцип 3: Взаимодействие служб через контракт, а не реализацию.

Третий принцип – еще один побочный продукт программирования на основе интерфейсов – состоит в том, что реализация деталей службы WCF (на каком языке она написана, как именно выполняет свою работу, и т. п.) не касается вызывающего её внешнего клиента. Клиенты WCF взаимодействуют со службами исключительно через их открытые интерфейсы. Более того, если члены службы представляют сложные специальные типы, они должны быть полностью детализированы в виде контракта данных, гарантируя, что клиенты смогут отобразить содержимое на определенную структуру данных.

4

Принцип 4: Совместимость служб базируется на политике.

Поскольку интерфейсы CLR предоставляют строго типизированные контракты всем клиентам WCF (и также могут быть использованы для генерации соответствующего документа WSDL на основе выбранной привязки), важно понимать на то, что интерфейсы и WSDL сами по себе недостаточно выразительны, чтобы детализировать аспекты того, что способна делать служба. Учитывая это, SOA позволяет определять политики, которые еще более проясняют семантику службы (например, ожидаемые требования безопасности, применяемые для общения со службой). Используя эти политики, можно отделять низкоуровневые синтаксические описания службы (предоставляемые интерфейсы) от семантических деталей их работы и способов их вызова.