Skip to main content

💻 IRB Kullanımı: Ruby Kodunu İnteraktif Ortamda Keşfetme Rehberi

Ruby’de dosya oluşturmadan kod yazmak ve anında test etmek ister misiniz? Bu rehberde, IRB (Interactive Ruby) aracını kullanarak Ruby kodlarını nasıl çalıştırabileceğinizi, çok satırlı blokları nasıl test edeceğinizi ve oturumunuzu nasıl özelleştireceğinizi adım adım öğreneceksiniz.


🧠 Bu Rehberde Ne Öğreneceksiniz?

  • IRB’yi başlatma ve sonlandırma
  • Kod çalıştırma ve dönüş değerlerini yorumlama
  • Harici kütüphaneleri ve yerel Ruby dosyalarını yükleme
  • .irbrc dosyası ile IRB oturumunu özelleştirme
  • Sık kullanılan IRB komutları ve kısayollar

🔹 1. IRB Nedir?

IRB (Interactive Ruby), Ruby’nin etkileşimli komut satırı aracıdır. Bir REPL (Read–Eval–Print–Loop / Oku-Değerlendir-Yazdır-Döngü) olarak çalışır:

  • Komutu okur
  • Değerlendirir
  • Sonucu yazdırır
  • Döngüyü tekrarlar

IRB ile küçük kod parçalarını test edebilir, metotları deneyebilir veya kütüphane davranışlarını hızlıca gözlemleyebilirsiniz.


🔹 2. IRB’yi Başlatma ve Durdurma

Ruby sisteminizde yüklüyse, IRB de otomatik olarak gelir. IRB’yi başlatmak için terminalde şunu yazın:

irb

İstemde şuna benzer bir ifade göreceksiniz:

irb(main):001:0>

Bu, IRB’nin çalıştığını ve artık Ruby kodlarını yazabileceğinizi gösterir. Çıkmak için exit yazabilir veya CTRL + D tuşlarını kullanabilirsiniz.


🔹 3. Kod Çalıştırma ve Dönüş Değeri

IRB’de yazdığınız her ifade bir dönüş değeri üretir. Bu değer, => işaretiyle gösterilir.

2 + 2
# => 4

puts metodu ile ekrana çıktı verebilirsiniz, ancak kendisi nil döndürür:

puts "Merhaba Dünya"
# Merhaba Dünya
# => nil

💡 Çıktı ve dönüş değeri farkı:

  • Çıktı, puts veya print gibi metotlarla ekrana yazdırılan değerdir.
  • Dönüş değeri ise, Ruby ifadesinin sonucu olup => ile gösterilir.

🔹 4. Değişkenler ve Çok Satırlı Kodlar

IRB’de değişkenleri tıpkı Ruby dosyasında olduğu gibi tanımlayabilirsiniz:

dogum_yili = 1995
vefat_yili = 2050
yas = vefat_yili - dogum_yili
# => 55

Çok satırlı kodlar (örneğin do...end veya class blokları) yazdığınızda, IRB kodun bitmesini bekler. Bu sayede bloklar tamamlanmadan çalışmaz.

["Elma", "Armut", "Ayva"].select do |meyve|
meyve.include?("A")
end
# => ["Armut", "Ayva"]

🔹 5. Harici Kütüphaneleri (Gem) Kullanma

Ruby’nin standart kütüphanelerini veya yüklediğiniz gem’leri IRB içinde kullanabilirsiniz.

require 'net/http'
# => true

Bir HTTP isteği yapmak için:

uri = URI.parse("http://icanhazip.com")
response = Net::HTTP.get_response(uri)
puts response.body

Eğer gem yüklü değilse şu hatayı alırsınız:

require 'httparty'
# LoadError: cannot load such file -- httparty

💡 Bu durumda oturumdan çıkın ve şu komutla yükleyin:

gem install httparty

🔹 6. Yerel Kodunuzu IRB’ye Dahil Etme

Kendi yazdığınız Ruby dosyalarını IRB’de test etmek için -r parametresini kullanabilirsiniz:

irb -r ./ip_yakalayici

Ardından sınıfınızı doğrudan çağırabilirsiniz:

yakalayici = IPYakalayici.new
yakalayici.get_ip
# => 203.0.113.52

💡 Not: require komutu .rb uzantısını otomatik algılar, bu yüzden belirtmenize gerek yoktur. Bu yöntem, kendi sınıflarınızı ve metotlarınızı hızlıca test etmenizi sağlar.


🔹 7. IRB Oturumunu Özelleştirme (.irbrc)

IRB’yi kişiselleştirmek için ev dizininizde .irbrc adlı bir dosya oluşturun:

nano ~/.irbrc

Aşağıdaki satırları ekleyebilirsiniz:

Otomatik Tamamlama:

require 'irb/completion'

Komut Geçmişi:

IRB.conf[:SAVE_HISTORY] = 1000

Otomatik Girintileme:

IRB.conf[:AUTO_INDENT] = true

Yardımcı Metot:

def gecmis(satir=10)
puts Readline::HISTORY.to_a.last(satir)
end

Bu metot, son 10 komutunuzu listeler.

💡 Her fazla kütüphane, IRB açılış süresini biraz uzatır. Sık kullanmadıklarınızı manuel require ile yüklemek daha verimlidir.


💬 Sıkça Sorulan Sorular (SSS)

1️⃣ IRB nedir? Ruby’den farkı ne? IRB, Ruby’nin interaktif ortamıdır. Dosya kaydetmeden kod denemeye yarar.

2️⃣ Çıktı ile dönüş değeri arasındaki fark nedir? Ekran çıktısı puts gibi komutlarla yazdırılır, dönüş değeri ise Ruby ifadesinin sonucudur (=> ile gösterilir).

3️⃣ IRB neden yavaş açılıyor? .irbrc dosyanızda fazla require varsa açılış süresi uzar. Gereksiz modülleri kaldırabilirsiniz.

4️⃣ .rb uzantısını neden belirtmiyoruz? Ruby, require komutunda .rb uzantısını otomatik algılar.

5️⃣ IRB güvenli mi? Evet, ancak .irbrc dosyanıza güvenmediğiniz kodları eklememelisiniz.


🎯 Sonuç

IRB, Ruby geliştiricileri için vazgeçilmez bir test ve keşif aracıdır. Küçük kod parçalarını denemek, gem’leri test etmek veya metotları analiz etmek için idealdir. .irbrc dosyasıyla özelleştirerek verimliliğinizi artırabilirsiniz.

Bu interaktif ortamı kullanarak Rabisu Bulut platformunda Ruby projelerinizi hızlı ve güvenli şekilde başlatabilirsiniz.