# Fonksiyon

Adres: https://softwaredictionary.org/tr/terimler/function
Kategori: Programlamanın Temelleri
Son güncelleme: 2026-09-29
İngilizcesi: Function
Türkçe karşılığı: işlev
Okunuşu: fankşın

Kısaca: Fonksiyon, 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.

## Fonksiyon nedir?

Fonksiyon, bir grup talimatı bir ad altında paketler; böylece yalnızca o adı çağırarak talimatları ihtiyaç duyduğunuz her an çalıştırabilirsiniz. Parametre adı verilen girdiler alabilir ve dönüş değeri adı verilen bir çıktı geri gönderebilir. Fonksiyonlar, neredeyse her programlama dilinin en temel yapı taşlarından biridir.

Mutfak blenderı fonksiyon için iyi bir benzetmedir. Malzemeleri koyarsınız (argümanlar), düğmeye basarsınız (fonksiyonu çağırırsınız) ve bir smoothie elde edersiniz (dönüş değeri). Motorun nasıl çalıştığını her seferinde düşünmeniz gerekmez; onu sadece kullanırsınız.

Fonksiyonlar kodu tekrarlamaktan kaçınmanıza, büyük sorunları daha küçük parçalara bölmenize ve her parçayı ayrı ayrı test etmenize yardımcı olur. İyi bir fonksiyon genellikle tek bir işi yapar ve `calculateTotal` ya da `sendEmail` gibi açıklayıcı bir ada sahiptir. JavaScript gibi dillerde fonksiyonlar aynı zamanda değerdir: değişkenlerde saklanabilir, başka fonksiyonlara aktarılabilir ve onlardan döndürülebilir.

Metot (method), nesne yönelimli kodda `user.save()` örneğindeki gibi bir nesneye ya da sınıfa ait olan fonksiyondur. Parametre ile argüman da sık karıştırılır: parametreler fonksiyon tanımında listelenen adlardır, argümanlar ise fonksiyon çağrılırken gönderilen gerçek değerlerdir.

## Önemli noktalar

- Fonksiyon, tek bir işi yapan, adlandırılmış ve yeniden kullanılabilir bir kod bloğudur.
- Parametreler fonksiyonun tanımladığı girdilerdir; argümanlar ise gönderdiğiniz değerlerdir.
- `return` deyimi, sonucu çağıran koda geri gönderir.
- Metot, bir nesneye ya da sınıfa bağlı fonksiyondur.

## Örnek: Bir fonksiyon tanımlamak ve çağırmak

```javascript
// Define a function with two parameters
function calculateTotal(price, taxRate) {
  const tax = price * taxRate;
  return price + tax; // send the result back to the caller
}

// Call it with two arguments
const total = calculateTotal(100, 0.2);
console.log(total); // 120

// Arrow function: a shorter syntax for the same idea
const double = (n) => n * 2;
```

## Sık sorulan sorular

**Fonksiyon ile metot arasındaki fark nedir?**

Metot, bir nesneye ya da sınıfa bağlı olan ve `list.push(4)` örneğindeki gibi o nesne üzerinden çağrılan fonksiyondur. Sıradan bir fonksiyon ise tek başına durur ve `calculateTotal(100, 0.2)` örneğindeki gibi doğrudan çağrılır.

**Parametre ile argüman arasındaki fark nedir?**

Parametreler, bir fonksiyonun tanımında listelenen değişken adlarıdır. Argümanlar ise fonksiyonu çağırırken verdiğiniz gerçek değerlerdir.

**Saf fonksiyon (pure function) nedir?**

Saf fonksiyon, aynı girdi için her zaman aynı çıktıyı döndüren ve global değişkenleri değiştirmek ya da bir dosyaya yazmak gibi yan etkileri olmayan fonksiyondur. Saf fonksiyonları test etmek ve anlamak daha kolaydır.

---

Software Dictionary: https://softwaredictionary.org/tr · https://softwaredictionary.org/tr/llms.txt
