0Pricing
JavaScript Academy · Ders

İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar

Verileri açıkça aktararak, kapanımlar ve küçük yardımcılar kullanarak this'ten kaçının; küçük, okunabilir işlevler yazın.

İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar, CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 3 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 3 dersten oluşur.

Neden işlevsel alternatifler?

Hedef: Karışıklığa yol açtığında this kullanmaktan kaçınmak.

  • Saf işlevler: verileri parametre olarak aktarır
  • Kapanımlar: bir kez yakalar, yeniden kullanır
  • Küçük fabrika işlevleri
  • Yeni başlayanlar için küçük, okunabilir yardımcılar
İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 1

this yerine saf işlev

Saf bir işlev girdileri okur ve bir değer döndürür. Gizli bir this yoktur; sınanması daha kolaydır.

// Pure function: takes data as parameters
function fullName(user) {
  // no this; explicit inputs
  return user.first + " " + user.last;
}

const u = { first: "Ayla", last: "Kaya" };
console.log("fullName:", fullName(u));
İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 2

Kapanım tabanlı yardımcı

Bir kapanım, this kullanmadan bağlamı saklar. Değerleri bir kez yakalar, ardından yardımcıyı birçok kez çağırırsınız.

// Closure: capture config and return a tiny helper
function makeGreeter(prefix) {
  // returns a function that remembers prefix
  return function (name) {
    return prefix + " " + name;
  };
}

const hi = makeGreeter("Hello");
console.log(hi("Ayla")); // "Hello Ayla"
console.log(hi("Mila")); // "Hello Mila"
İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 3

this olmadan fabrika

Küçük bir fabrika, durumu bir kapanımın içinde gizler; this gerekli değildir. Yöntemler küçük ve odaklıdır.

// Factory pattern: build an object with simple, pure-like methods
function makeCounter(start) {
  let value = Number.isFinite(start) ? start : 0;

  return {
    get: function () { return value; },        // read
    inc: function () { value = value + 1; }    // update (encapsulated)
  };
}

const c = makeCounter(2);
c.inc();
console.log("counter:", c.get()); // 3
İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 4

Küçük yardımcıları birleştirin

Küçük, parametre odaklı yardımcılar temiz biçimde birleştirilebilir. Bağlama adımlarına gerek yoktur.

// Compose small helpers: map + filter as plain functions
function isAdult(user) { return user.age >= 18; }
function toLabel(user) { return user.name + " (" + user.age + ")"; }

const people = [
  { name: "Ayla", age: 18 },
  { name: "Mert", age: 16 },
  { name: "Lina", age: 21 }
];

const labels = people.filter(isAdult).map(toLabel);
console.log("labels:", labels);
İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 5

Stili seçme

İşlevsel stili şu durumlarda seçin:

  • İşlev saf olabilir (sınanması kolaydır)
  • Yalnızca birkaç değere ihtiyacınız vardır (kapanım aracılığıyla yakalayın)
  • Yeni başlayanlar için basitlik önemlidir
  • this sorunlarından tamamen kaçınmak istersiniz
İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 6

İşlevsel alternatif testi

Hızlı kontrol: this hatalarından kaçınma.

İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 7

Özet

Özet: Açık parametrelere sahip saf işlevleri tercih edin; küçük durumlar için kapanımları veya küçük fabrikaları kullanın. this içermeyen yardımcılar basit, sınanabilir ve yeni başlayanlar için uygundur.

İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar — resim 8

Sıkça Sorulan Sorular

“İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar” dersi ücretsiz mi?

Evet — “İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 3 dersten oluşur.

“İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar” dersinde ne öğreneceğim?

Verileri açıkça aktararak, kapanımlar ve küçük yardımcılar kullanarak this'ten kaçının; küçük, okunabilir işlevler yazın. JavaScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te JavaScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 3. dersidir.

“İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her JavaScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Sözcüksel ve Dinamik this, Ok İşlevlerine Yeniden Bakış
  2. Yöntem Çıkarma Tuzakları, Kısmi Uygulama
  3. İşlevsel Alternatifler — Bağlam Aktarma, Kapanımlar, Küçük Yardımcılar
← JavaScript Academy Sayfasına Dön