Kapsamlar (Scopes) ve Gölgeleme (Shadowing)

Bir değişkenin kapsamı (scope) onu çevreleyen blokla sınırlıdır.

Hem dış kapsamlardaki (outer scopes) değişkenleri hem de aynı kapsamdaki değişkenleri gölgeleyebilirsiniz (shadow):

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Speaker Notes

  • Son örnekte iç bloğa (inner block) bir b ekleyerek ve ardından bu bloğun dışından ona erişmeye çalışarak bir değişkenin kapsamının (scope) sınırlı olduğunu gösterin.
  • Gölgeleme mutasyondan farklıdır çünkü gölgeleme sonrasında her iki değişkenin hafıza konumları aynı anda mevcuttur. Her ikisi de kodda nerede kullandığınıza bağlı olarak aynı ad altında mevcuttur.
  • Bir gölgeleme (shadowing) değişkeni farklı bir türe sahip olabilir.
  • Gölgelendirme ilk başta anlaşılmaz görünebilir, ancak .unwrap() sonrasındaki değerleri korumak için kullanışlıdır.