Parametre
- İngilizcesi
- Parameter
- Türkçe karşılığı
- argüman
- Okunuşu
- pıremıtır
Kısaca
Parametre, bir fonksiyonun tanımındaki adlandırılmış bir girdidir; argüman ise fonksiyon çağrıldığında o yere verilen gerçek değerdir.
Programlamada parametre nedir?
function area(width, height) içinde width ve height parametrelerdir: fonksiyonun gövdesinde kullandığı yer tutuculardır. Kod area(3, 4) diye çağırdığında 3 ve 4 değerleri argümandır ve o çağrının içinde width 3, height 4 olur. Bu iki terim günlük konuşmada çoğu zaman birbirinin yerine kullanılır, ama aradaki ayrım dokümantasyonu ve hata mesajlarını okurken işe yarar.
Diller argüman geçirmek için birkaç yol sunar. Konumsal argümanlar sırayla eşleşir; adlandırılmış (keyword) argümanlar adla eşleşir, Python'daki area(width=3, height=4) gibi; varsayılan parametreler çağıran bir değeri vermediğinde bir değer sağlar; JavaScript'teki ...items ya da Python'daki *args gibi rest ya da değişken sayılı (variadic) parametreler de fazladan gelen istenildiği kadar argümanı toplar.
Bir argümanın fonksiyona nasıl ulaştığı da önemlidir. Sayılar gibi ilkel değerler kopyalanır; bu yüzden parametreyi değiştirmek çağıranı etkilemez. Nesneler ve listeler ise genellikle referans olarak geçirilir; bu yüzden aldığı nesneyi değiştiren bir fonksiyon çağıranın nesnesini de değiştirir, oysa parametrenin kendisine yeni bir değer atamak bunu yapmaz.
Sık yapılan bir yanlış, çok sayıda parametresi olan bir fonksiyonun esnek olduğunu düşünmektir. Uzun parametre listelerini doğru çağırmak zordur, çünkü aynı türden iki değeri yer değiştirmek kolaydır. İlgili değerleri tek bir seçenekler nesnesinde toplamak ya da adlandırılmış argümanlar kullanmak çağrıları daha açık ve güvenli yapar.
Önemli noktalar
- Parametreler, bir fonksiyon tanımındaki adlandırılmış girdilerdir.
- Argümanlar, fonksiyon çağrıldığında verilen değerlerdir.
- Argümanlar konumsal, adlandırılmış, varsayılanlı ya da değişken sayılı olabilir.
- Nesneler genellikle referansla geçirilir; bu yüzden değişiklikler çağırana ulaşabilir.
- Uzun parametre listeleri hataya açıktır; bir seçenekler nesnesi işe yarar.
Örnek
// width and height are parameters; unit has a default value
function area(width, height, unit = "m²") {
return `${width * height} ${unit}`;
}
area(3, 4); // 3 and 4 are arguments → "12 m²"
area(3, 4, "cm²"); // overrides the default
// A rest parameter collects any number of arguments
function sum(...numbers) {
return numbers.reduce((total, n) => total + n, 0);
}
sum(1, 2, 3, 4); // 10
// An options object instead of a long parameter list
function createUser({ name, email, admin = false }) { /* ... */ }
createUser({ name: "Ada", email: "ada@example.com" });Sık sorulan sorular
Parametre ile argüman arasındaki fark nedir?
Parametre, fonksiyon tanımında adı geçen değişkendir. Argüman ise belirli bir çağrıda onun için verilen değerdir. greet("Ada") diye çağrılan greet(name) içinde name parametre, "Ada" argümandır.
Varsayılan parametre nedir?
Çağıran bir değer vermediğinde kullanılan bir değere sahip parametredir, function greet(name = "friend") gibi. Sık görülen durumda çağrıları kısa tutar.
Argümanlar değerle mi, referansla mı geçirilir?
Dile ve türe bağlıdır. Çoğu dil ilkel değerleri kopyalar, nesneleri ise aynı nesneye bir referans olarak geçirir; bu yüzden fonksiyon içinde nesneyi değiştirmek dışarıdan görünür, parametreye yeniden değer atamak ise görünmez.
İlgili sayfalar
- FonksiyonProgramlamanın Temelleri, s. 20Fonksiyon, belirli bir işi yapan, isteğe bağlı olarak parametre denen girdiler alıp sonuç döndürebilen, adlandırılmış ve yeniden kullanılabilir kod bloğudur.
- DeğişkenProgramlamanın Temelleri, s. 10Değişken, bir programda sayı ya da metin gibi bir değeri tutan ve kodun çalışırken okuyup değiştirebildiği, adlandırılmış bir depolama alanıdır.
- MetotProgramlamanın Temelleri, s. 38Metot, bir nesneye ya da sınıfa ait olup onun üzerinden çağrılan fonksiyondur; user.rename("Ada") örneğindeki gibi nesnenin verisini okuyup değiştirebilir.
- Lambda fonksiyonuProgramlamanın Temelleri, s. 36Lambda fonksiyonu, adı olmadan satır içinde yazılan küçük fonksiyondur; genellikle sıralama ya da filtreleme yapan başka bir fonksiyona doğrudan aktarılır.
- Veri türüProgramlamanın Temelleri, s. 54Veri türü, bir programa bir verinin sayı ya da metin gibi hangi tür bir değer taşıdığını ve hangi işlemlerin ona uygulanabileceğini söyleyen sınıflandırmadır.
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin