Формализованные языки для построения API

http://ru.wikipedia.org/wiki/IDL

Самые интересные:
Apache Thrift — http://en.wikipedia.org/wiki/Apache_Thrift
Гугловый ProtoBuf — http://en.wikipedia.org/wiki/Protobuf
Apache Avro — http://en.wikipedia.org/wiki/Apache_Avro.
Сравнений этих IDL — тысячи, например: http://www.slideshare.net/IgorAnishchenko/pb-vs-thrift-vs-avro.

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

P.S.: это просто набор ссылок, «чтобы не забыть».
Главное же при построении API:

  • всё только через POST-запросы (делать обязательный параметр method, для оборачивания реста)
  • мультизапросы/мультиответы
  • клиент может управлять структурами данных (полями у объектов ответа)

LEAVE A COMMENT