Yerel ve Küresel Değişken Arasındaki Fark

İçindekiler:

Anonim

Değişken nedir?

Değişken, programın işleyebileceği bir depolama alanına atanan addır. Bir değişken türü, değişkenin belleğinin boyutunu ve düzenini belirler.

Ayrıca, bu hafızada saklanması gereken değer aralığını ve bu değişkene uygulanabilecek işlemlerin doğasını da belirler.

Bu eğitimde öğreneceksiniz

  • Değişkenlerin Kapsamı
  • Yerel Değişkenin Tanımı
  • Global Değişkenin Tanımı
  • Yerel Değişken ve Global Değişkenler
  • Global değişkenleri kullanmanın avantajları
  • Yerel Değişkenleri kullanmanın avantajları
  • Global değişkenleri kullanmanın dezavantajları
  • Yerel Değişkenleri kullanmanın dezavantajları
  • Daha kullanışlı olan nedir?

Değişkenlerin Kapsamı

Değişkenin kapsamı basitçe bir değişkenin yaşam süresidir. Bir değişkenin uygulanabilir veya canlı olduğu kod bloğudur. Örneğin:

function foo(){var x;}

Bir "foo" işlevinin içinde bir "x" değişkeni bildirirsiniz. Bu değişkenin kapsamı o işlevin içinde kalır, bu işlevin dışında kullanılamaz.

Değişkenlerin, değişken programlama dili tanımlayabileceğiniz üç yer vardır:

  • Bir işlevin veya bloğun içinde: Yerel değişkenler
  • Tüm fonksiyonların dışında: Global değişkenler
  • Fonksiyon parametrelerinin tanımında: Biçimsel parametreler

ANAHTAR FARK

  • Yerel değişken bir işlev içinde bildirilirken, Global değişken işlevin dışında bildirilir.
  • Yerel değişkenler, fonksiyon çalışmaya başladığında oluşturulur ve fonksiyon sona erdiğinde kaybolur, diğer yandan Global değişken, yürütme başladığında oluşturulur ve program bittiğinde kaybolur.
  • Yerel değişken veri paylaşımı sağlamazken Global değişken veri paylaşımı sağlar.
  • Yerel değişkenler yığında saklanırken, Global değişken derleyici tarafından karar verilen sabit bir konumda saklanır.
  • Parametrelerin geçmesi yerel değişkenler için gereklidir, oysa global bir değişken için gerekli değildir

Yerel değişken

Yerel Değişken , programlama bloğu veya alt yordamları içinde bildirilen bir değişken türü olarak tanımlanır. Yalnızca içinde bildirildiği alt programın veya kod bloğunun içinde kullanılabilir. Yerel değişken, fonksiyonun bloğu çalıştırılana kadar var olur. Bundan sonra otomatik olarak imha edilecek.

Yerel Değişken Örneği

public int add(){int a =4;int b=5;return a+b;}

Burada 'a' ve 'b' yerel değişkenlerdir

Küresel değişken

Programdaki bir Global Değişken , alt programın veya işlevin dışında tanımlanan bir değişkendir. Küresel bir kapsamı vardır, yani programın ömrü boyunca değerini korur. Bu nedenle, program içinde tanımlanan herhangi bir işlevle, gölgelendirilmediği sürece program boyunca erişilebilir.

Misal:

int a =4;int b=5;public int add(){return a+b;}

Burada 'a' ve 'b' global değişkenlerdir.

Yerel Değişken Vs. Global Değişkenler

Burada Yerel ve Global değişkenler arasındaki bazı temel farklılıklar bulunmaktadır.

Parametre Yerel Küresel
Dürbün Bir işlev içinde bildirilmiştir. İşlevin dışında bildirilir.
Değer Başlatılmamışsa, bir çöp değeri depolanır Başlatılmamışsa, varsayılan olarak sıfır saklanır.
Ömür İşlev yürütülmeye başladığında oluşturulur ve işlevler sona erdiğinde kaybolur. Programın genel çalışması başlamadan önce oluşturulur ve program sona erdiğinde kaybolur.
Bilgi paylaşımı Yerel değişkenin verilerine yalnızca bir işlevle erişilebildiği için veri paylaşımı mümkün değildir. Birden fazla işlev aynı global değişkene erişebildiği için veri paylaşımı mümkündür.
Parametreler Yerel değişkenlerin diğer işlevdeki değere erişmesi için parametrelerin aktarılması gerekir. Program boyunca görülebildiği için genel bir değişken için parametrelerin aktarılması gerekli değildir.
Değişken değerin değiştirilmesi Yerel değişkenin değeri bir işlevde değiştirildiğinde, değişiklikler başka bir işlevde görünmez. Global değişkenin değeri bir işlevde değiştirildiğinde, değişiklikler programın geri kalanında görülebilir.
Erişen Yerel değişkenlere, bildirildikleri bir işlevin içindeki ifadeler yardımıyla erişilebilir. Global değişkenlere programdaki herhangi bir ifadeyle erişebilirsiniz.
Bellek saklama alanı Belirtilmediği sürece yığın üzerinde depolanır. Derleyici tarafından belirlenen sabit bir yerde saklanır.

Global değişkenleri kullanmanın avantajları

  • Global değişkene bir programdaki tüm fonksiyonlardan veya modüllerden erişebilirsiniz.
  • Modüllerin dışında yalnızca global değişkeni tek seferde bildirmeniz gerekir.
  • Tutarlılığı korumanıza yardımcı olduğu için "sabitleri" saklamak için ideal olarak kullanılır.
  • Global değişken, birden fazla işlev aynı verilere erişirken kullanışlıdır.

Yerel Değişkenleri kullanmanın avantajları

  • Yerel değişkenlerin kullanımı, görev çalışırken değişkenlerin değerlerinin bozulmadan kalacağına dair bir garanti sunar.
  • Birkaç görev aynı anda çalışan tek bir değişkeni değiştirirse, sonuç tahmin edilemez olabilir. Ancak bunu yerel değişken olarak bildirmek bu sorunu çözer çünkü her görev kendi yerel değişkeni örneğini yaratacaktır.
  • Yerel değişkenlere farklı işlevlerde aynı adı verebilirsiniz çünkü bunlar yalnızca içinde bildirildikleri işlev tarafından tanınırlar.
  • Herhangi bir fonksiyon biter bitmez yerel değişkenler silinir ve kapladığı hafıza alanını serbest bırakır.

Global Değişkenleri kullanmanın dezavantajları

  • Global olarak bildirilen çok fazla değişken, programın yürütülmesi tamamlanana kadar bellekte kalırlar. Bu, Yetersiz Bellek sorununa neden olabilir.
  • Veriler herhangi bir işlev tarafından değiştirilebilir. Programda yazılan herhangi bir ifade, global değişkenin değerini değiştirebilir. Bu, çoklu görev ortamlarında öngörülemeyen sonuçlar verebilir.
  • Global değişkenler kod yeniden düzenleme nedeniyle durdurulursa, çağrıldıkları tüm modülleri değiştirmeniz gerekecektir.

Yerel Değişkenleri kullanmanın dezavantajları

  • Yerel bir değişkenin hata ayıklama süreci oldukça zordur.
  • Modüller arasında veri paylaşımı mümkün olmadığından, tekrar tekrar geçmek için ortak verilerin gerekli olması.
  • Çok sınırlı bir kapsamları var.

Daha kullanışlı olan nedir?

Herhangi bir dilde bir program yazarken yerel ve küresel değişken eşit derecede önemlidir. Bununla birlikte, çok sayıda küresel değişkenin büyük bir hafızası olabilir. Küresel değişkenlerde istenmeyen bir değişikliğin belirlenmesi zorlaşır. Bu nedenle, istenmeyen global değişkenlerin bildirilmesinden kaçınılması önerilir.