tg-me.com/iosdev/459
Last Update:
Уровни доступа к сущностям в Swift
⬆️Open — это самый высокий (наименее ограничивающий) уровень доступа.
⬇️ Private — самый низкий (наиболее ограничивающий) уровень доступа.
Всего Swift предоставляет пять различных уровней доступа к сущностям в вашем коде. Эти уровни доступа относятся к исходному файлу, в котором определена сущность, а также к модулю, к которому принадлежит этот исходный файл.
🟢 Open и public позволяют использовать сущности в любом исходном файле определяющего модуля, а также в других файлах с помощью импорта. Обычно open или public используются при указании публичного интерфейса фреймворка.
Open применяется только к классам и членам класса, и отличается от Public тем, что позволяет коду вне модуля создавать подклассы и переопределять их. Пометка класса Open явно указывает на то, что вы учли влияние кода из других модулей, использующих этот класс в качестве суперкласса, и что вы разработали код своего класса соответствующим образом.
🟡 Internal позволяет использовать сущности в любом исходном файле из определяющего модуля, но не в любом исходном файле вне этого модуля. Обычно internal используется при определении внутренней структуры приложения или фреймворка.
🔴 File-private ограничивает использование сущности только ее определяющим исходным файлом. Используйте доступ file-private, чтобы скрыть детали реализации конкретной части функциональности, когда эти детали используются во всем файле.
⚫ Private ограничивает использование сущности вложенным объявлением и его расширением в том же файле. Используется, чтобы скрыть детали реализации конкретной части функциональности, когда они используются только в рамках одного объявления.
@iOS Dev
BY iOS Dev

Share with your friend now:
tg-me.com/iosdev/459