Какие зоны (области видимости) есть в программировании, кроме доменных?

«Какие зоны (области видимости) есть в программировании, кроме доменных?» — вопрос из категории Сети, который задают на 24% собеседований PHP Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В контексте программирования, помимо доменных зон (DNS), существуют следующие основные области видимости (scope):

  1. Глобальная область видимости (Global Scope) Переменные, объявленные вне любых функций или классов, доступны из любой части скрипта.

  2. Локальная область видимости (Local/Function Scope) Переменные, объявленные внутри функции, видны только в этой функции.

  3. Область видимости блока (Block Scope) Переменные, объявленные внутри блока (например, в циклах for, while или условиях if с использованием let/const в JavaScript), видны только внутри этого блока.

  4. Область видимости класса (Class Scope) Свойства и методы класса, доступ к которым регулируется модификаторами (public, private, protected).

  5. Область видимости модуля/пространства имен (Module/Namespace Scope) Идентификаторы, ограниченные конкретным модулем (ES6) или пространством имен (C#, PHP), для предотвращения конфликтов имен.

  6. Лексическая область видимости (Lexical Scope) Определяет, как замыкания (closures) получают доступ к переменным из внешней функции, в которой они были созданы.

Ключевое отличие: Эти области определяют доступность и время жизни переменных и функций в коде, в то время как доменные зоны (DNS) относятся к структуре имен в сети.