Совместимость OData с .NET, Java, PHP, iPhone

пятница, 23 июля 2010, Александр Краковецкий

На MIX10 был анонсирован протокол обмена данными Open Data Protocol (OData), а на сайте http://odata.org уже доступны SDK для PHP, Java, Objective-C (iPhone & Mac,) и JavaScript (AJAX и Palm WebOS).

OData SDKs for PHP, Java, Objective C (iPhone & Mac,) и JavaScript (AJAX и Palm WebOS)

Новая версия OData SDK for PHP (ранее она называлась Toolkit for PHP with ADO.NET/WCF Data Services) позволяет работать с большими наборами данных, содержит механизм автоматической разбивки страниц и новый пример на базе каталога Netflix.

Детальнее о OData SDK для PHP

Также доступен SDK для Objective-C, что позволяет использовать OData в приложениях для Mac и iPhone. Пример использования SDK - iPhone приложение для отображения данных сервиса NetFlix, который хостится в Azure хранилище.

Детальнее о OData SDK для Objective-C

Noelios обновила Restlet Extension для OData – набор инструментов и библиотек для Java. Для более детального изучения рекомендуется статья Restlet supports OData, the Open Data Protocol и детальное руководство по использованию.

Все SDK доступны на специальной странице - http://www.odata.org/developers/odata-sdk.

Библиотека Скачать Документация Статьи

OData Javascript Library

Download

Documentation

Articles

OData SDK for PHP

Download

Documentation

Articles

Restlet extension for OData (Java)

Download

Documentation

Articles

ruby_odata: OData client library for ruby. Download Documentation

OData Client Library for Windows Phone 7 series

Download

Coming soon

OData client for Objective-C

Download

User Guide included in the download 

Microsoft .NET Framework 3.5 Service Pack 1

Download

Documentation

Articles

Data Services update for Microsoft .NET Framework 3.5 Service Pack 1

Download
- Win7 / Win2008 R2
- other Windows OS

Documentation

Articles

Microsoft .NET Framework 4.0

Documentation

Articles

Silverlight 4

Download

Documentation

Articles

О протоколе Open Data

Назначение протокола OData - публикация данные в вебе с дополнительными возможностями управления данными и позволяет тесно интегрировать данные между клиентами, серверами, сервисами и инструментами.

Детальнее:

Netflix - демо-приложение

Демо-приложение потребляет OData поток, с помощью Silverlight отображает данные на экране. Кроме того, эти же данные используются для отображения на Palm webOS с помощью библиотеки OData JavaScript. Пример разработан с помощью OData SDK для PHP.

На стартовой странице отображается поисковая форма с разными меню для поиска в каталоге (для простоты используется только Genre, Language и Title):

php-odata-netflix-demo-search

Когда пользователь задал критерии поиска и нажал кнопку поиска, PHP-приложение вызывает поток Netflix OData с помощью простого запроса:

OData_PHP_snippet

Список фильтруется и сортируется на стороне сервера, задача клиента - отобразить полученный список:

php-odata-netflix-demo-list

Netflix’s OData backend работает на Windows Azure и SQL Azure для публикации OData потоков. Есть несколько вариантов построения поставщика данных:

  • SharePoint 2010
  • SQL Azure
  • Windows Azure Table Storage
  • IBM Websphere

Список всех доступных решений можно посмотреть здесь: http://www.odata.org/producers.

Как было реализовано демо приложение?

Вы можете посмотреть видео на Channel9, в котором детально описано как демо-приложение было реализовано.

Использование oData SDK для PHP для отображения OData фидов - достаточно простое и быстрое занятие.

Важными являются следующие шаги:

1. Генерация прокси классов: SDK включает инструмент, который на основании OData фида генерирует соответствующие PHP классы. Он создаст один класс для каждой коллекции, доступной через сервис. Ниже показан список коллекций, доступных через сервис Netflix:
OData-netflix

2. Следующим этапом является написание бизнес-логики приложения с помощью сгенерированных PHP классов.

Ниже показана диаграмма, на которой показаны основные этапы работы с сервисами OData:

Building-OData-PHP

Процесс мало зависит от выбранной технологии, будь то PHP, Java, Objective-C (iPhone & Mac) или JavaScript (AJAX и Palm WebOS).

Другие материалы:

(с) Jean-Christophe Cimetiere, Sr. Technical Evangelist

Компании из статьи


Microsoft Украина


Сайт:
http://www.microsoft.com/ukr/ua/

Microsoft Украина Украинское подразделение компании Microsoft.

Ищите нас в интернетах!

Комментарии

Свежие вакансии