Skip to content

İnteraktif Kullanım

Ruby'nin (ve benzer dillerin) en çok hoşuma giden özelliği İnteraktif Shell özelliği olmasıdır. Aynı eskiden Commodore 64 günlerindeki gibi, shell'i açıp Ruby yazmaya başlayabiliriz.

Genel olarak bu interaktif kullanım REPL olarak geçer. REPL aslında Read Evaluate Print Loop'un baş harfleridir. Yani, kullanıcıdan bir input (Read) gelir, bu girdi çalıştırılır (Evaluate), sonuç ekrana yazdırılır (Print) ve son olarak başa döner ve yine input bekler (Loop).

REPL olayı, Python ve PHP'de de var.

IRB

Ruby kurulumu ile beraber gelir. Yapmanız gereken Terminal'i açıp irb yazıp entera basmak.

$ irb
irb(main):001:0> print "Merhaba Dünya"
Merhaba Dünya=> nil
irb(main):002:0>

Örnekleri yaparken çok sık kullanacağız bu komutu. Keza, daha da geliştirilmiş bir versiyon olan pry gem'ini de göreceğiz ilerleyen bölümlerde.

Shell

Shebang dediğimiz yöntemli Linux/Unix tabanlı işletim sistemlerinde Ruby dosyalarını aynı bir uygulama çalıştırır gibi kullanabilirsiniz.

test.rb dosyası olduğunu düşünün; bu dosya

#!/usr/bin/env ruby
puts "Merhaba dünya"

şeklinde olsun. Bu dosyayı çalıştırmak için ya

$ ruby test.rb

ya da, dosyanın Execute flag'ini aktif hale getirerek

$ chmod +x test.rb
$ ./test.rb

çalıştırabilirsiniz. Eğer Execute flag'ini aktif hale getirmez iseniz işletim sistemi size aşağıdaki gibi bir hata dönecektir.

permission denied: ./test.rb

Bunun sebebi dosyanızın execute edilebilmesi için izninin bulunmamasıdır. Konuya daha yakından bakmak için test.rb dosyasının bulunduğu dizinde ls -l komutunu çalıştıralım.

$ ls -l
total 8
-rw-r--r--  1 kullanici  staff  42 May 20 23:48 test.rb

Burada görüleceği gibi -rw-r--r-- dosyanızın sadece okuma ve aktif kullanıcı için yazma izni bulunmakta. Eğer yukarıdaki gibi Execute flag'ini aktif hale getirirseniz dosyanızın son hali aşağıdaki gibi olacaktır.

$ ls -l
total 8
-rwxr-xr-x  1 kullanici  staff  42 May 20 23:48 test.rb

Şu anda dosyanız tüm kullanıcılarda okunabilir ve çalıştırılabilir durumda.