Вопросы с тегом «api-design»

Разработка интерфейса прикладного программирования (API) обсуждает лучшие практики для создания библиотек, предназначенных для общего или общественного использования.

1
Идиоматическое обёртывание C ++ типа шаблона API в C
Я работаю над упаковкой API C ++, который предоставляет доступ к хранилищу данных (Hazelcast) в функции C, чтобы к хранилищу данных также можно было получить доступ из кода только на C. API Hazelcast C ++ для структуры данных Map выглядит следующим образом: auto map = hazelcastClient->client->getMap<int, string>(mapName); map.put(key, value); Он …
9 c++  c  api-design 

3
CRUD API: как указать, какие поля обновлять?
Допустим, у вас есть какая-то структура данных, которая сохраняется в какой-то базе данных. Для простоты назовем эту структуру данных Person. Теперь перед вами стоит задача разработать CRUD API, который позволяет другим приложениям создавать, читать, обновлять и удалять Personфайлы. Для простоты предположим, что этот API доступен через какой-то веб-сервис. Для C, …

2
Должны ли слушатели событий содержаться в слабых ссылках?
Обычно слушатели событий не должны переживать объект, который их зарегистрировал. Означает ли это, что прослушиватели событий должны по умолчанию поддерживаться слабыми ссылками (хранятся в слабых коллекциях, на которых зарегистрированы прослушиватели объектов)? Существуют ли действительные случаи, когда слушатель должен пережить своего создателя? Или, может быть, такая ситуация - ошибка, и ее …

1
API версий
Предположим, у вас есть большой проект, поддерживаемый базой API. Проект также предоставляет публичный API, который могут использовать конечные пользователи. Иногда вам нужно внести изменения в базу API, которая поддерживает ваш проект. Например, вам нужно добавить функцию, которая требует изменения API, нового метода или требует изменения одного из объектов или формата …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.