Если у меня есть служба на основе REST, написанная в рамках Symfony [symfony-project.org] (например, PHP), есть ли какие-то достойные инструменты / фреймворки, которые будут анализировать мой код и создавать документацию API?
В основе Java-based framework входят возможности документации, аналогичные тем, что мне нужно, вы можете посмотреть пример этого здесь: http://enunciate.codehaus.org/wannabecool/step1/index.html .
Я понимаю, что предпосылка REST-сервисов должна быть очевидна, однако я был за чем-то, что создало бы эту документацию для меня без необходимости вручную записывать все мои конечные точки, поддерживаемые форматы, выходные данные и т. Д.
благодаря
Не уверен, что раньше вы видели Сваггера . У них, похоже, есть версия , совместимая с PHP , хотя я не могу ее ручаться лично. Это создает некоторую автоматическую сборку документации API, сравнимую с объявлением, хотя похоже, что она требует некоторой тяжелой ручной документации через комментарии PHP. Это, как говорится, я думаю, что ручное усилие будет таким же или меньше, чем создание собственных страниц через wiki, а выход намного, намного приятнее.
Как и в случае с фактоидом, похоже, что Enunciate имеет неопределенные планы в конечном итоге поддерживать другие платформы , но соответствующий билет Jira в настоящее время открыт, ожидая, что спонсор возьмет на себя эту работу.
Из билета ENUNCIATE-356 Jira :
Первым шагом к поддержке других языков является отключение модели Enunciate от модели Java. Эта работа отслеживается и регистрируется в ENUNCIATE-584 . К сожалению, он никогда не выходил из фазы исследования из-за того, насколько он тяжелый. Если не будет найден спонсор для работы, я не ожидаю, что в ближайшее время это будет тяжелая загрузка.
Редактировать:
Нашел аналогичный вопрос, когда кто-то упоминает проект GitHub, посвященный Swagger + Symfony2 . Этот другой вопрос тот же, но никакой дополнительной информации.
Насколько я знаю, нет возможности автоматизировать документацию по типам носителей.
Если вы используете такой тип мультимедиа, как XHTML, то веб-искатель, такой как Google sitemap, может создать полезный вывод, чтобы показать отношения между вашими ресурсами.