Каким должно быть SDK?
- Запускаться и на клиенте и на сервере
- Для HTTP запросов к примеру должны отдаваться:
- HTTP status code
- Parsed headers
- Parsed body
- Кастомизируемым:
- Host API
- Маппинг ответов
- Бросать кастомные исключения
Плюсы
- Вся мощь JavaScript!!!
- Контроль версий
- Меньше лишней работы
- Созданный SDK прост, тестируется и готов к переиспользованию
- Не нужны отдельные тулы (Postman...) => однородные API и Unit тесты
Минусы
- Для тестирования нужно минимально знать JS и пару либ
- Сложно "извлечь" SDK из фронта, если у вас "неравный брак" с Angular