Главная Блог Статьи Конференции Портфолио Flash-point RSS  RU EN

Владимир Бондаренко

Специалист по web-технологиям
ПОСЛЕДНИЕ ЗАПИСИ
  •  Тьма за спиной – мобильный квест написанный Виталием Зыковым
  •  Автоматизация процессов в компании: объединение всей информационной среды в одной системе Mauris CRM (CMS + SalesForce + MailChimp + мобильное приложение)
  •  10 советов по созданию страницы своей компании в «Википедии»
  •  Сравниваем форматы для документирования RESTful API: WADL, Swagger, I/O Docs, API BluePrint, RAML, Google API Discovery, Apimatic

  • ОБЛАКО ТЕГОВ
    Ajax Apple Chrome cloud CMS ECM Flash-point Folium iPad iPhone Java Script jQuery mobile development MVC PHP Python RESTful API SDK SEO StarCraft Swagger Twitter блоги видео кодирование конференция обучение SEO оцифровка информации плагины презентация программирование развлечение скрипт советы сравнение технологии хостинг ЧПУ
    КОНТАКТЫ

    Skype: coolweb_ua

    twitter

    СЧЕТЧИК


    Автоматическая генерация SDK для RESTful API

     

    Автоматическая генерация SDK для RESTful API

    Автоматизация этапов разработки программного обеспечения может привести к значительному приросту производительности работы команды проекта. В то же время, некорректно выбранный или настроенный софт для автоматизации может, в итоге, создать массу проблем. В этой статье я постараюсь на собственном опыте описать способы автоматизации обновлений SDK в связи с изменениями в RESTful API.

    Не изменяйте свой RESTful API и у вас не будет проблем:) “Спасибо, кэп”, - ответите вы. Но это, действительно, очень важный пункт, с которого стоит начать. Любое автоматически генерированное SDK будет менее качественно написанного вами. Если ваш проект позволяет сначала доработать формат API, то не спешите писать SDK. Вам не понадобится автоматизированные SDK после утверждения окончательной версии API. Если ваш проект может пойти по такому пути - дальше можете не читать.

    Но, увы, большинство проектов не могут принять единый формат RESTful запросов. Проекты не стоят на месте: что-то меняется, исправляются ошибки, и дорабатывается новый функционал. Если вы имеете SDK для пяти языков программирования, то каждое изменение требует значительных трудозатрат. Не стоит забывать про человеческий фактор.Его можно компенсировать автоматизированными тестам, но на это тоже требуется время.

    Вы хотите двигаться вперед, а не топтаться на месте. Вы готовы предоставлять своим клиентам не очень качественное, но актуальное SDK. Возможно, в будущем, когда ваш сервис станет вторым Амазоном, вы выделите 5 программистов, которые будут постоянно поддерживать красивые рукописные SDK. Пока будем экономить средства и уменьшим затраты на разработку.

    Я нашел и протестировал 3 решения автоматической генерации SDK, о которых далее поговорим подробнее.

    Автоматическая генерация SDK для RESTful APIhttp://swagger.io/ - open source проект, который позволяет получать SDK из JSON файлов в формате Swagger. Я не смог сгенерировать свой пример SDK. На сегодняшний день графический редактор поддерживает только формат разметки 2.0, а генератор доступ для версии разметки не выше 1.2. Логика разработчиков до сих пор остается для меня загадкой.

     

     

    Автоматическая генерация SDK для RESTful APIhttp://restunited.com/ - онлайн сервис для документирования API  и генерирования SDK. Использует Swagger для генерации готовых библиотек. Ощутимым преимуществом является отсутствие необходимости настраивать Swagger локально и ряд форматов, которые можно импортировать в сервис: Postman, Alpaca, Swagger, 3Scale, I/0 Docs, API BluePrint. Пока сервис бесплатен, так как находится в бета тестировании.

    Автоматическая генерация SDK для RESTful APIhttps://apimatic.io/ - сервис аналогичен предыдущему, но имеет свой генератор SDK. Генератор базируется на Unirest проекте, который с моей точки зрения,значительно качественнее подхода Swagger . Этот ресурс опережает предыдущий по количеству принимаемых на импорт форматов: APIMATIC (у сервиса есть свой формат), WADL, Swagger, I/O Docs, API BluePrint, RAML, Google API Discovery, Mashape.


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


    Теги:  SDK, RESTful API, советы, PHP, Python, Swagger

    Читать по теме:

     Перечень сервисов для документирования RESTful API
     Сравниваем форматы для документирования RESTful API: WADL, Swagger, I/O Docs, API BluePrint, RAML, Google API Discovery, Apimatic
     Почему не стоит использовать Swagger как сервис для документирования RESTful API?

    loading

    Написать комментарий

    Имя:
    Почта (скрыта):
    Сайт:
    Текст: :) :( 0_o =-0 =-D 8-) :-(( TT >:o ]:->

    Использование любых материалов сайта возможно только при размещении активной и прямой ссылки на VBond.Kiev.ua.

    Главная | Блог | Статьи | Конференции | Портфолио | Flash-point | RSS

    developed by Bondarenko Volodymyr