>(00)< webgraphlab
На сайте
· Главная
· Стандарты
· Инструменты
· Редактор графов
· Документация
· Скачать
Стандарты
· Алгоритмы
· Графы

Все алгоритмы в системе являются corba-объектами, реализующими всего один общий idl-интерфейс (см страницу документации).

Использованию технологии corba даёт два мощных преимущества, при этом не требуя дополнительных усилий от программистов:
  • для клиента нет никакой разницы, на каком языке написан алгоритм - c++, java или там fortran (если для него есть поддержка corba) - всё их взаимодействие осуществляется через corba, которая сама заботится о совместимости.
  • клиенту всё равно, на какой машине выполняется алгоритм - на той же, что и он сам, или на соседней - главное, чтобы между ними была связь по сети; при этом протокол сетевого взаимодойствия также не играет роли для клиента.

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

Вся входная и выходная информация для алгоритмов передается в виде xml-строк. Набор форматов графа/параметров/результата будет различным для различных типов алгоритмов. Все алгоритмы классифицируются по типам (т.е. назначению, действиям которые они выполняют), а для каждого типа уже указывается набор форматов строк граф/параметр/результат.

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

Единственное (и самое серьёзное) препятствие при наприсании такого алгоритма - это наличие инструментов, позволяющих легко загружать xml-граф в структуру, пригодную для использования в программе. На данный момент такие инструменты есть для C++ и Java, с другими языками программирования сложнее.