Мы разрабатываем библиотеку для других команд нашей компании.Я хотел бы спроектировать интерфейс аутентификации, если пользователь нашей библиотеки реализует этот интерфейс в своем проекте, то мы будем использовать их реализацию (возможно, через отражение) для аутентификации.Если реализации нет, мы проигнорируем эту часть.
Причина, по которой мы это делаем, в отличие от предоставления метода для регистрации их класса аутентификации, заключается в том, что мы не предоставляем такую высокоуровневую функцию команде проекта.В основном они будут работать над частью бизнес-логики.