Что должен знать разработчик, разрабатывающий и внедряющий API для веб-сайта сообщества, прежде чем приступать к интенсивному кодированию? Есть множество API, таких как API Twitter , API Facebook , Flickr API и т. Д., Которые являются хорошими примерами. Но как бы вы создали свой собственный API ?
Какие технологии вы бы использовали? Я думаю, что было бы неплохо использовать REST -подобный интерфейс, чтобы API был доступен из разных платформ / клиентов / браузеров / инструментов командной строки (например, curl ). Я прав? Я знаю, что должны соблюдаться все принципы веб-разработки, такие как кэширование, доступность, масштабируемость, безопасность, защита от потенциальных DOS-атак, валидация и т. Д. И когда дело касается API, некоторые из наиболее важных вещей - это обратная совместимость и документация. Я что-то упустил?
С другой стороны, если подумать с точки зрения пользователя (я имею в виду разработчика, который будет использовать ваш API), что бы вы искали в API? Хорошая документация? Много примеров кода?
Этот вопрос был вдохновлен вопросом Джоэла Кехорна "Что должен знать разработчик перед созданием общедоступного веб-сайта?" .
Этот вопрос является вики сообщества , поэтому я надеюсь, что вы поможете мне собрать воедино все то, что необходимо учитывать при создании API для веб-сайта сообщества.