19 Ağustos 2017 Cumartesi

Statik Dizi Değişkenler!


Tesadüfen elime geçen ve bir öğretim üyesi tarafından hazırlanan PDF’de Array sınıfı tipindeki nesnelerden statik dizi diye söz edildiğini görünce bu kısa metni yazmak gerekti.

Hoca arkadaşın demek istediği, klasik şekilde tanımlanan dizi değişkenlerin eleman sayısının sonradan değiştirilemediğidir. Tabi bunu derken, nesneye yönelik programlama dillerinin anlamı yıllardır “sabit” olan statik kavramını kullanıyor. 

Madem konu açıldı biraz konuşalım: İster C#, ister Visual Basic isterse de Java dili kullanılsın, ArrayList gibi nesne hazırlandığında, nesne dahilinde eleman sayısı önceden belli olan yani “statik” bir dizi değişken hazırlanır. Bu ArrayList nesnesine kullanıcı tarafından fazla sayıda eleman eklenip başta belirtilen sayı aşıldığında geri planda yeni bir dizi değişken tanımlanır ve artık kapasitesi yeterli gelmeyen eski dizi değişkenin mevcut elemanları yeni dizi değişkene aktarılır. Bu işlem geri planda otomatik olarak yapıldığı için fazla meraklı olmayan programcılar ArrayList için dinamik dizi diyebilirler.

Yukarıda adlarını andığımız programlama dillerinde ArrayList sınıfı olmasaydı programcılar için gerektiğinde kapasitesi iki katına çıkarılan yeni bir dizi değişkeni tanımlayıp eski dizi değişkenin elemanlarını yenisine kopyalaması zor değildir. Tabi hazırda ArrayList veya List sınıfları dururken hiçbir programcı kendini yorup boş yere kendi koleksiyon sınıfını hazırlamaz.

Hiç yorum yok: