Чем access control private/fileprivate/internal/public/open отличается от инкапсуляция и когда что выбрать?

iOS / SwiftJuniorSwift CoreСравнениеios|swift|swift core|access|access control private/fileprivate/internal/public/open

Что хотят услышать интервьюеры:

Сравнение: access control private/fileprivate/internal/public/open нужно оценивать в контексте задачи, а не как универсально лучший вариант. В сравнении с инкапсуляция смотрите на ownership, lifecycle, читаемость, поддержку разных iOS версий, тестируемость и риск ошибок.

Ответ:

Нюанс: open отличается от public возможностью наследования/override за пределами модуля.

Как отвечать: назвать критерии выбора, привести реальный пример и честно обозначить ограничения.

private var token: String

Источники

Похожие вопросы