Yazılımda Scope Nedir?

Yazılımda scope aslında “{ }” süslü parantezlerin arasına verilen isimdir. Yazılımda scope kavramı Python, HTML gibi dillerde süslü parantez olmadığı için yoktur. Fakat yazılımda öne çıkan Java, C#, Javascript gibi dillerde ” { } ” süslü parantez mevcuttur. Yabancı kaynaklarda araştırma yaparken “Scope” kavramıyla karşılaşmışsınızdır. Buna rağmen birçok kimse bunun ne anlama geldiğini bilmemektedir. Türkçe anlamıyla yaşam alanı olarak ifade edilir. Gelin şimdi scope kavramı ile ilgili örneklerle konuyu daha net kavrayalım.

Scope için neden yaşam alanı denilmektedir?

Kodların da bir yaşam alanı mevcuttur. Örneğin bir balığın yaşam alanı sudur. Oradan ayrıldığında yaşayamıyorsa aynı durum kodlar için de geçerlidir. Şimdi gelin aşağıdaki örnekte bu durumu biraz daha inceleyelim.

   class YasamAlani
     {
        string str1 = "Yazılım-101";
     }
     class Program
     {
         static void Main(string[] args)
         {
             Console.WriteLine(str1); // Hata
             Console.Read();
         }
     }

Gördüğünüz gibi YasamAlani isimli classta bulunan str1 isimli özelliği main metodunun içinde yazdırmaya çalıştık. Derleme anında bu kodu çalıştırınca hata aldık. Çünkü oradaki str1’in mavi renkle gösterilen yaşam alanı dışında çağırılmasıdır. Sarı renkli alan ise main metodunun yaşam alanıdır. Derleme anında aldığımız hata “str1 isimli bir değişkene ulaşamadık” olur.

Bu yazımızda yazılım dillerinin çoğunda bulunan “{ }” süslü parantezlerin yabancı kaynaklarda karşılaşabileceğiniz ismi olan “Scope” terimini anlatmaya çalıştım. Konu hakkında soru ve görüşlerinizi belirtebilirsiniz. Herkese sağlıklı günler dilerim. 🙂 C356.