0Pricing
Ruby Academy · Ders

Dizi ve Hash Örüntüleri

Verileri ayrıştırın

Dizi ve Hash Örüntüleri, CoddyKit'te ücretsiz bir Ruby Academy dersidir. Bu, 4 dersinin 2. 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, Ruby Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Ruby Academy kursu toplamda 4 dersten oluşur.

Dizi Desenleri

Bir dizi deseni konuma ve uzunluğa göre eşleşir. Her öğe deseni, karşılık gelen öğeyle karşılaştırılır.

case [1, 2, 3]
in [1, 2, 3]
  puts 'exact match'
end

Dizi Öğelerini Bağlama

Her konumu bir değişkene almak için tanımlayıcıları kullanın.

case [10, 20]
in [x, y]
  puts(x + y)
end

Uzunluk Önemlidir

Varsayılan olarak bir dizi deseni tam uzunluk gerektirir. İki öğeli bir desen, üç öğeli bir diziyle eşleşmez.

case [1, 2, 3]
in [a, b]
  puts 'two'
in [a, b, c]
  puts 'three'
end

Kalanlar İçin Splat

Bir splat olan *rest, kalan öğelerin herhangi bir sayısını bir diziye alarak uzunluğu esnek hâle getirir.

case [1, 2, 3, 4]
in [first, *rest]
  puts(first)
  p rest
end

Ortada Splat Kullanımı

Splat, sabit öğelerin arasına yerleşerek başı ve sonu alabilir, ortadaki bölümü yok sayabilir.

case [1, 2, 3, 4, 5]
in [first, *, last]
  puts("#{first} ... #{last}")
end

Hash Desenleri

Bir hash deseni anahtarlara göre eşleşir. Verilen anahtarların var olduğunu ve değerlerinin eşleştiğini denetler; ek anahtarlara izin verilir.

case { name: 'Ada', age: 36 }
in { name: 'Ada' }
  puts 'found Ada'
end

Hash Değerlerini Bağlama

Anahtara bir bağlama adı vererek bir değeri alın. Yalnızca anahtarı yazmak, aynı ada sahip bir değişkene bağlar.

case { name: 'Bob', age: 25 }
in { name: String => n, age: Integer => a }
  puts("#{n} is #{a}")
end

Kısa Anahtar Bağlama Yazımı

Bir anahtarın ardından deseni yazmamak, anahtardan türetilen ada sahip bir değişkeni otomatik olarak bağlar.

case { city: 'Istanbul' }
in { city: }
  puts(city)
end

Ek Anahtar Gerektirmeme

Hash desenleri varsayılan olarak ek anahtarları yok sayar. Yalnızca listelenen anahtarların bulunmasını zorunlu kılmak için **nil ekleyin.

case { a: 1 }
in { a: 1, **nil }
  puts 'exactly one key'
end

İç İçe Desenler

Desenler serbestçe iç içe yerleştirilebilir; böylece derin yapıları tek bir dalda parçalarına ayırabilirsiniz.

data = { user: { name: 'Ada', tags: ['admin', 'dev'] } }
case data
in { user: { name:, tags: [first_tag, *] } }
  puts("#{name}: #{first_tag}")
end

Parse Edilmiş JSON'u Eşleştirme

Desen eşleştirme, parse edilmiş JSON veya CSV verileriyle mükemmel biçimde birlikte çalışır ve tam olarak ihtiyacınız olan alanları çıkarır.

require 'json'
resp = JSON.parse('{"status":"ok","items":[1,2,3]}', symbolize_names: true)
case resp
in { status: 'ok', items: }
  puts(items.sum)
end

Hızlı Kontrol

Varsayılan olarak hash deseni in { a: 1 }, { a: 1, b: 2 } hash'iyle eşleşir mi?

Özet: Dizi ve Hash Desenleri

Koleksiyonların yapısını çözebilirsiniz:

  • Dizi desenleri konuma ve uzunluğa göre eşleşir
  • *rest, kalan öğeleri alır
  • Hash desenleri anahtara göre eşleşir ve ek anahtarlara izin verir
  • Kısa { key: } yazımı, aynı ada sahip değişkenleri bağlar
  • **nil ek anahtarları yasaklar; desenler derin biçimde iç içe yerleşebilir
case { id: 1, items: [9, 8] }
in { items: [head, *] } then puts head
end

Sıkça Sorulan Sorular

“Dizi ve Hash Örüntüleri” dersi ücretsiz mi?

Evet — “Dizi ve Hash Örüntüleri” 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 Ruby Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Ruby Academy kursu toplamda 4 dersten oluşur.

“Dizi ve Hash Örüntüleri” dersinde ne öğreneceğim?

Verileri ayrıştırın Ruby 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.

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

Önceden deneyim gerekmez. CoddyKit'te Ruby 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, 4 dersinin 2. dersidir.

“Dizi ve Hash Örüntüleri” 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 Ruby Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Ruby 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. case/in Temelleri
  2. Dizi ve Hash Örüntüleri
  3. Bulma Örüntüleri ve Koruyucular
  4. Pratik Kullanım Alanları
← Ruby Academy Sayfasına Dön