У меня есть опыт как разработчика API, так и потребителя API. Мне любопытно узнать, есть ли какие-то лучшие практики. Должен быть какой-то консенсус, вот ответ Google недавно выпустил руководство по дизайну API.
Персонажи дизайнерского товара API:-
- Легко учить
- Легко для потребителя без документации.
- Безопасный и масштабируемый.
- API должно быть легко расширяемым.
- Обеспечьте более высокое качество по более низкой цене.
- Соответствует аудитории.
- Высокая адаптивность и производительность.
Руководство по проектированию API Google довольно простое в своей цели, с целью помочь разработчикам создавать простые, согласованные и простые в использовании сетевые API. основанных на сокетах API RPC с API REST на основе HTTP».
В этом руководстве по проектированию объясняется, как применять принципы «REST к проектам API независимо от языка программирования, операционной системы или сетевого протокола. Это НЕ руководство исключительно по созданию REST API».
Большинство компаний считают, что дизайн API рассматривается только в контексте дизайна REST API. Это руководство поможет вам выйти за рамки стиля дизайна REST API.
Лучшее в этом руководстве то, что оно предназначено не только для REST. Думаю, многие разработчики уже знают о Книге стилей API. Книга стилей API — действительно лучшее руководство по разработке REST API. Если вы не знаете о книге стилей API, просмотрите ее и примените ее в своем наборе инструментов.
Мне нравится, как руководство Google объясняет нам Как создать хороший API.
API должен делать одну вещь, и делать это хорошо.
Не допускайте утечки логики реализации. Имена действительно имеют значение в дизайне API, имена должны быть в основном говорящими сами за себя. API должен нравиться прозе.
Это простое мое понимание руководства по разработке API Google, и дайте мне узнать больше от вас. Как вы, ребята, разрабатываете API в организации?
Если вам понравилась эта статья, пожалуйста, не забудьте похлопать.
Для большего количества историй.
Канал YouTube
https://www.youtube.com/channel/UCiTaHm1AYqMS4F4L9zyO7qA