Перейти к содержанию

gtfs-realtime-bindings Join the MobilityData chat

Языковые привязки, созданные на основе спецификации протокольных буферов GTFS Realtime для популярных языков.

Введение

GTFS Realtime - это формат данных для передачи информации о системах общественного транспорта в реальном времени. Данные GTFS Realtime кодируются и декодируются с помощью Protocol Buffers, компактного двоичного представления, разработанного для быстрой и эффективной обработки. Сама схема данных определена в файле GTFS-realtime.proto.

Для работы с данными GTFS Realtime разработчик обычно использует схему gtfs-realtime.proto для создания классов на выбранном им языке программирования. Затем эти классы могут быть использованы для создания объектов модели данных GTFS-realtimedata и их сериализации в виде двоичных данных или, в обратном направлении, для разбора двоичных данных в объекты модели данных.

Поскольку генерация классов модели данных GTFS Realtime из схемы gtfs-realtime.proto является такой распространенной задачей, которая иногда приводит в замешательство начинающих разработчиков, данный проект нацелен на предоставление предварительно сгенерированных языковых привязок GTFS Realtime для ряда наиболее популярных языков программирования. По возможности, эти языковые привязки будут опубликованы в виде пакетов, чтобы облегчить их использование в других проектах.

Поддерживаемые языки

Другие языки

Мы не предоставляем сгенерированный код для C++, для этого используйте официальный компилятор protoc ( отсюда или отсюда).

Нам не хватает вашего любимого языка? Сделайте свой вклад:

  1. Прочитайте CONTRIBUTING.md.
  2. Откройте запрос на исправление с указанием выбранного вами языка. Пожалуйста, включите инструкции по обновлению (в идеале - скрипты). Также предоставьте упаковку, подходящую для экосистемы языка.

История проекта

Этот проект был первоначально создан Google - MobilityData начала поддерживать проект в начале 2019 года.

Старые версии библиотек привязки по-прежнему публикуются под именем Google. Смотрите документацию по каждому языку здесь, чтобы найти последнюю версию, опубликованную Google.