Обзор языков описания RESTful API
RESTful (передача репрезентативного состояния) API (интерфейс прикладного программирования) DL (языки описания) — это формальные языки, разработанные для обеспечения структурированного описания RESTful веб-API , которое полезно как для человека, так и для автоматизированной машинной обработки. Языки описания API иногда называют языками описания интерфейсов (IDL). Структурированное описание может использоваться для создания документации для программистов- людей ; такую документацию может быть легче читать, чем документацию в свободной форме, поскольку вся документация, созданная одним и тем же инструментом, соответствует одним и тем же соглашениям о форматировании. Кроме того, язык описания обычно достаточно точен, чтобы обеспечить автоматическое создание различных программных артефактов, таких как библиотеки, для доступа к API из различных языков программирования, что снимает с программистов бремя их ручного создания. [1]
История
[ редактировать ]Ранее существовало два основных языка описания: WSDL 2.0 (язык описания веб-служб) и WADL (язык описания веб-приложений). Ни один из них не получил широкого распространения в отрасли для описания RESTful API, ссылаясь на плохую читаемость обоих и на то, что WADL фактически не может полностью описать RESTful API. [2]
Принцип
[ редактировать ]Гипертекстовый API
[ редактировать ]Принцип создания RESTful API известен под аббревиатурой HATEOAS ( Гипермедиа как механизм состояния приложения ). При таком подходе клиентское программное обеспечение не записывается в статическое описание интерфейса, представленное в документации. Вместо этого клиенту предоставляется набор точек входа, и API обнаруживается динамически посредством взаимодействия с этими конечными точками. HATEOAS был представлен в Роя Филдинга докторской диссертации «Архитектурные стили и проектирование сетевых программных архитектур» . HATEOAS — один из ключевых элементов, отличающих REST от механизмов RPC . [3]
Список DL RESTful API
[ редактировать ]- Язык описания веб-служб (WSDL)
- Гидра
- Протокол открытых данных (OData)
Ссылки
[ редактировать ]- ^ Чжай, Хуан; Хуан, Цзяньцзюнь; Ма, Шицин; Чжан, Сянъюй; Тан, Лин; Чжао, Цзяньхуа; Цинь, Фэн (14 мая 2016 г.). «Автоматическое создание моделей из документации для функций Java API» . Материалы 38-й Международной конференции по программной инженерии . ММВБ '16. Нью-Йорк, штат Нью-Йорк, США: Ассоциация вычислительной техники. стр. 380–391. дои : 10.1145/2884781.2884881 . ISBN 978-1-4503-3900-1 . S2CID 2733669 .
- ^ Филдинг, Рой. «REST API должны управляться гипертекстом» . Проверено 4 ноября 2015 г.