Мы разрабатываем новый API для нашего продукта, который будет отображаться через веб-службы. У нас есть внутренняя дискуссия о том, должен ли API быть максимально простым в использовании (в цене за совершение большего количества вызовов) или сделать его максимально эффективным (что усложняет его использование). Например, вот две проблемы, которые возникли:Выбор между производительностью и простотой использования в WS API
- Должны ли мы управлять информацией о сеансе на сервере или передавать эту информацию пользователю, и ожидать, что он отправит ее нам в случае необходимости? (Пожалуйста, проигнорируйте последствия безопасности для сеанса)
- Должны ли мы объединять вызовы, которые, вероятно, будут следствием, чтобы сохранить время, затраченное на поездку туда и обратно, даже если они действительно не разделяют одну и ту же логическую функциональность ?
В основном, люди на рабочем столе в пользу простого и простого в использовании API, в то время как люди Интернета хотели бы сделать его максимально эффективным. Это первый публичный API, который мы предоставляем, и нам нужна стратегия.
Лично я выступаю за то, чтобы использовать API как можно более удобный. Другие компоненты в системе, вероятно, будут иметь гораздо большее влияние на производительность, а сложные API-интерфейсы гораздо более подвержены ошибкам. Но я программист на рабочем столе ...
Итак, какова должна быть наша стратегия? Каковы общие практики при создании такого API?
Мы предоставляем CMS. Наши пользователи создадут свой собственный веб-интерфейс, используя наше приложение через WS API. В большинстве случаев API действительно повлияет на отзывчивость пользовательского интерфейса. Я знаю, что в некоторых случаях детали диктуют решение, поэтому я ищу стратегию для случаев, когда возможны оба пути. – eran