Ruby, basitlik ve üretkenliğe odaklanan açık kaynaklı, dinamik ve genel amaçlı bir programlama dilidir. Kolay bir syntax’a sahiptir.
İster aktif olarak Ruby mülakat hazırlığı arayan bir developer olun, ister Ruby developer’ları şirketine kazandırmak isteyen bir işe alım uzmanı olun, aşağıdaki Ruby mülakat soruları listesi sizin için çok faydalı olacaktır.
İşte en iyi 2023 Ruby mülakat soruları ve cevaplarının listesi. 👇💼
1. Ruby programlama dilinin öne çıkan özellikleri nelerdir?
- Yorumlanan bir dil: Ruby yorumlanan bir programlama dilidir. Ruby kodu, çalıştırılabilir formatta olan Ruby yorumlayıcısı tarafından doğrudan yorumlanır ve çalıştırılır. Bu, Ruby'nin kodunun daha esnek ve hızlı bir şekilde geliştirilmesine olanak tanırken, derleme sürecine gerek duymadan kodun anında denenebilmesini sağlar.
- Dinamik ve esnek: Ruby, çalışma zamanında kodu değiştirebilir.
- Açık kaynak ve çapraz platform: Ruby açık kaynaklıdır. Resmi sitesinden isteyen herkes Ruby’i ücretsiz olarak indirilebilir. Farklı işletim sistemlerinde çalıştırılabilir.
- Nesne yönelimli: Ruby'deki dizeler, sayılar, değerler ve temel veriler bir nesnedir.
2. Ruby'de raise/rescue ve throw/catch arasındaki fark nedir?
Ruby programlama dilinde raise ve rescue, istisna işleme için kullanılan yapılar iken, throw ve catch ise program akışını kontrol etmek için kullanılan yapılar olarak işlev görür.
- ✅ raise, bir hata durumunu belirtmek için kullanılır. Bir hata oluştuğunda raise ile istisna oluşturulur ve bu istisna programın ilerleyişini değiştirebilir.
- ✅ rescue, bir hata durumunu yakalamak için kullanılır.
- ✅ throw, belirli bir noktada program akışını değiştirmek için kullanılır.
- ✅ catch, bir throw ifadesi tarafından "fırlatılan" değeri yakalamak ve işlemek için kullanılır.
3. Ruby değişkenleri (variables) nedir?
Ruby'de dört tane değişken vardır:
1️⃣ Global Değişkenler (Global Variables): Bu değişkenler tüm Ruby programı için kullanılabilir. $ ile başlar.
2️⃣ Sınıf Değişkenleri (Class Variables): Tanımlanan sınıfın tüm örneklerini kapsar. Bu değişkenler @@ ile başlar.
3️⃣ Yerel Değişken (Local Variables): Bildirildiği işlev veya kod yapısını kapsar. Bu değişkenler küçük harf veya alt çizgi ile başlar.
4️⃣ Örnek Değişkeni (Instance Variables): Bir sınıfın örneklerine ait verileri temsil eder. Bu değişkenler @ ile başlar.
4. Ruby'de kullanılan farklı operatörler nelerdir?
Ruby dilinde çok sayıda operatör vardır. En çok kullanılan operatörlerden bazıları şunlardır:
• Aritmetik Operatörleri
• Karşılaştırma (bağlantı) Operatörleri
• Atama Operatörleri
• Mantıksal (logic) Operatörler
• İkil (bitwise) Operatörler
• Dönüştürücüler
• Denklik (identity) Operatörleri
5. Ruby'de kullanılan farklı sınıf kitaplıkları nelerdir?
- Text processing
- CGI Programming
- Network programming
- GUI programming
- XML Programming
6. Ruby'de kullanılan veri türleri nelerdir?
Ruby'deki veri türleri, metin, dize, sayılar vb. gibi farklı veri türlerini temsil eder.
✔️ Numbers: Sayısal veri türleri tam sayıları ve ondalıklı sayıları temsil eder. Örneğin; “5”, “3.14”
✔️ Strings: Strings, bir cümle veya bir kelime gibi metin verilerini temsil eder. Strings değişkenleri, tek (”) veya çift (“”) tırnak içine alarak tanımlanır. Strings oluşturmak için hem çift tırnak hem de tek tırnak kullanılabilir.
✔️ Symbols: Tekil bir değeri sembolik olarak temsil eder.
✔️ Hashes: Anahtar-değer çiftlerini depolamak için kullanılır. Her bir anahtar, bir değeri temsil eder. Bir anahtarın değeri => işareti ile atanır.
✔️ Arrays: Birden çok değeri sıralı bir şekilde depolamak için kullanılır. Her türlü veriyi içerebilir. Bir dizideki veriler aralarında virgülle ayrılır ve köşeli parantez içine alınır.
✔️ Booleans: Doğru veya yanlış değerlerini temsil eder. Koşullu ifadelerde kullanılır.
7. Ruby’de “super” anahtar kelimesi ne zaman kullanılır?
🔐 Üst sınıfta çağıran yöntemle aynı ada sahip bir yöntemi çağırmak için “super” anahtar kelimesi kullanılır.
8. Ruby'de Block, Proc ve Lambda nedir?
🎯 Block
Bir kod bloğu oluşturmak için kullanılan en temel yapıdır. do/end anahtar kelimeleri veya parantez {} içine alınır. Birden çok bağımsız değişkenleri olabilir. Bağımsız değişken adları iki dikey çizgi arasında tanımlanır.
🎯Proc
Kod bloklarını nesne olarak saklamak ve çağırmak için kullanılır. Proc.new veya proc anahtar kelimeleri ile oluşturulabilir. call metodu ile de çağrılırlar.
🎯 Lambda
Lambda özel bir Proc nesnedir. -> veya lambda anahtar kelimesi ile tanımlanır.
9. Ruby programlama dilinde interpolation nedir?
İnterpolasyon, Ruby'de oldukça önemli bir süreçtir. Dize (string) içinde değişken veya ifadelerin doğrudan yerleştirilmesi anlamına gelir.
10. Ruby neden esnek bir dil olarak biliniyor?
Ruby, developer’ların bölümleri değiştirmesine izin verdiği için esnek bir dil olarak bilinir. Dilin bazı yönleri silinebilir veya yeniden tanımlanabilir. Ruby, kullanıcıya herhangi bir sınırlama getirmez. Örneğin, iki sayı eklemek için Ruby, + işaretini veya 'artı' kelimesini kullanmanıza izin verir.
11. Rails Migration nedir?
Rails Migration, developer’ların veri tabanı şemasını değiştirmek için Ruby kullanmasına izin veren bir araçtır. Yani SQL yerine Ruby kodu kullanılır. Rails Migration aşağıdakileri yapabilir:
✔️ Tablo oluşturur
✔️ Sütunu yeniden adlandırır
✔️ Sütunu değiştirir
✔️ Sütunu kaldırır
✔️ Tabloyu yeniden adlandırır
✔️ Sütun ekler
12. Rails Controller nedir?
Ruby on Rails framework'ünde, bir Controller (denetleyici), web uygulamalarında kullanıcı taleplerini işleyen ve ilgili yanıtları oluşturan bir bileşendir.
13. Ruby'deki adlandırma kuralları nelerdir?
- ✅ Değişkenler: Tüm değişkenler küçük harfle yazılır ve kelimeler alt çizgi ile ayrılır. Örneğin: user_name
- ✅ Sınıf ve Modüller: Her kelime büyük harfle başlar ve alt çizgi kullanılmaz.
- ✅ Veri Tabanı Tablosu: Veri tabanı tablosu adları küçük harfle yazılır ve kelimeler arasında alt çizgi kullanılır. Tüm tablo adları çoğul biçimde yazılmalıdır. Örneğin: users
- ✅ Model: Model adları her zaman tekil yazılır.
- ✅ Denetleyici: Controller adları çoğul biçimde kullanılır ve sonuna "Controller" eklenir. Örneğin: OrdersController
14. Ruby’de migration komutu nasıl oluşturulur?
15. Ruby'de load() ve request( ) nedir?
1️⃣ load( ) - Belirtilen dosyanın her zaman yeniden yüklenmesini sağlar.
2️⃣ request( ) - Belirtilen dosyanın sadece bir kez yüklenmesini sağlar. Genellikle kütüphaneleri içe aktarmak için kullanılır.
Ruby Kariyerinize Başlayın
Ruby öğrenmek, iyi bir kariyere sahip olmanızı sağlayabilir. Yeni başlıyorsanız Ruby Bootcamp’lerine katılabilir ve kendinizi geliştirebilirsiniz.
Zaten halihazırda yılların deneyimine sahip bir geliştiriciyseniz, Coderspace’e üye olabilir ve sizin için doğru işi bulmanızı sağlayabiliriz.