Zasięg (programowanie)

Zasięg widoczności (ang. scope) – w programowaniu fragment programu (np. obszar lub blok kodu), z którym skojarzone są wartości lub wyrażenia (np. zmienne). Różne języki programowania posiadają różne rodzaje zasięgów widoczności.

Zasięgu najczęściej używa się do:

  • kontrolowania cyklu życia zmiennych
  • kontrolowania widoczności i dostępności zmiennych i stałych w obrębie programu
  • implementacji hermetyzacji

Zasięgi mogą zawierać:

  • deklaracje lub definicje identyfikatorów (np. zmiennych)
  • instrukcje lub wyrażenia definiujące wykonywalny algorytm lub jego część
  • inne, zagnieżdżone zasięgi

Przestrzeń nazw jest zasięgiem, który grupuje logicznie powiązane identyfikatory pod pojedynczym identyfikatorem nadrzędnym. W ten sposób zasięgi mogą wpływać na rozwiązywanie nazw w ich obrębie.

Zmienne są powiązane z zasięgami. Różne typy zasięgów wpływają na to, jak lokalne zmienne są wiązane. Ma to różne konsekwencje w zależności od tego, czy dany język programowania stosuje statyczne (leksykalne) czy dynamiczne zasięgi.