# Ruby

Adres: https://softwaredictionary.org/tr/terimler/ruby
Kategori: Programlama Dilleri
Son güncelleme: 2026-09-30
Okunuşu: rubi

Kısaca: Ruby, geliştirici mutluluğu için tasarlanmış, okunaklı sözdizimi ve Ruby on Rails web çatısıyla tanınan, dinamik ve nesne yönelimli bir dildir.

## Ruby nedir?

Ruby, Japonya'da Yukihiro "Matz" Matsumoto tarafından geliştirilen ve ilk kez 1995'te yayımlanan, genel amaçlı bir programlama dilidir. Belirtilen amacı programcıları mutlu etmektir; bu yüzden `3.times { puts "hi" }` gibi doğal okunan kodu tercih eder. Ruby, 2000'li yılların ortasında, "yapılandırma yerine gelenek" (convention over configuration) fikrini yaygınlaştıran bir web çatısı olan Ruby on Rails sayesinde geniş çapta tanındı.

Ruby dinamik tiplidir ve derinlemesine nesne yönelimlidir: sayılar ve `nil` dahil her şey metotları olan bir nesnedir. Ördek tiplemeye (duck typing) dayanır; yani kod, bir nesnenin hangi sınıfa ait olduğuyla değil, bir metoda yanıt verip vermediğiyle ilgilenir. `do...end` ya da süslü parantezler arasındaki kod parçaları olan bloklar, `each` ve `map` gibi metotlara aktarılır; üst programlama (metaprogramming) ise kütüphanelerin program çalışırken metot tanımlamasına izin verir ve birçok anlatımı güçlü mini dil böyle kurulur. Standart gerçekleme CRuby (MRI olarak da bilinir), belleği bir çöp toplayıcıyla yönetir ve sık çalışan kod için isteğe bağlı bir tam zamanında derleyici içerir.

Ruby çoğunlukla web uygulamalarında ve API'lerde, ayrıca betik yazmada, otomasyonda ve geliştirici araçlarında kullanılır. Ruby okumak sıklıkla sade İngilizce okumaya benzetilir: metot adları `empty?` gibi sorular için `?` ile, nesneyi yerinde değiştiren metotlar için `!` ile bitebilir; bu da niyeti bir bakışta görünür kılar.

Ruby en sık Python ile kıyaslanır. İkisi de temiz sözdizimli, dinamik, çöp toplamalı, yorumlanan dillerdir; ancak Python "tek bir bariz yol" ilkesini tercih eder ve veri bilimi ile makine öğrenmesine hâkimdir, Ruby ise aynı fikri ifade etmenin birçok yolunu benimser ve web geliştirmede en güçlüdür. Ruby kodu ayrıca bloklara ve metot zincirlemeye yaslanırken, Python genellikle liste kapsamaları (comprehensions) ve açık döngüler kullanır.

## Önemli noktalar

- Ruby, okunabilirlik ve geliştirici mutluluğuna odaklanan dinamik, nesne yönelimli bir dildir.
- Sayılar ve `nil` dahil Ruby'deki her şey bir nesnedir.
- Bloklar ve üst programlama, özlü ve anlatımı güçlü kod yazmayı mümkün kılar.
- En bilinen kullanım alanı, Ruby on Rails çatısıyla web geliştirmedir.

## Örnek: Ruby'de bloklar ve metot zincirleme

```ruby
# Blocks pass behavior to methods like select and map
orders = [
  { item: "book", price: 12 },
  { item: "lamp", price: 45 },
  { item: "pen", price: 3 },
]

expensive = orders.select { |o| o[:price] > 10 }
                  .map { |o| o[:item].upcase }

puts expensive.inspect                          # ["BOOK", "LAMP"]
puts "Total: #{orders.sum { |o| o[:price] }}"   # Total: 60
```

## Sık sorulan sorular

**Ruby bugün hâlâ kullanılıyor mu?**

Evet. Ruby aktif olarak geliştiriliyor, her Aralık ayında yeni bir sürüm çıkıyor ve uzun soluklu birçok web uygulaması ile yeni girişimler Ruby on Rails üzerinde inşa etmeyi sürdürüyor.

**Ruby ile Ruby on Rails arasındaki fark nedir?**

Ruby programlama dilidir. Ruby on Rails ise Ruby ile yazılmış, web uygulamalarını hızla geliştirmek için yönlendirme, veritabanı erişimi, şablonlar ve diğer araçları sunan bir web çatısıdır.

**Ruby, Python'dan hızlı mı yavaş mı?**

Performans iş yüküne ve sürüme büyük ölçüde bağlıdır ve ikisi de genellikle Go ya da Java gibi derlenen dillerden yavaştır. Aralarındaki seçim genellikle ekosisteme, kütüphanelere ve ekip tercihine bağlıdır.

---

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