Syntax (Söz Dizimi) ve Rezerve Kelimeler
Syntax (Söz Dizimi)
Genel olarak çok kolay ve anlaşılır bir syntax'a sahiptir. Sanki İngilizce okur/konuşur gibi söz dizimi bulunur. Örneğin,
Eğer a'nın değeri 5'ten büyükse ekrana "Merhaba" yaz
demek istiyorsak;
puts "Merhaba" if a > 5
Diğer dillerden farklı olarak, Ruby'de fonksiyon (method) çağırırken parantez kullanmak zorunluğu yoktur. Bu ilk etapta kafa karıştırıcı gibi dursa da, alışınca ne kadar kolay okunabilir olduğunu görüyorsunuz. Mecburi değil, yani parantez kullanmanızda sorun yok. Parantezli kullanım;
def greet_user(user_name)
puts "Merhaba #{user_name}"
end
greet_user("Uğur") # Merhaba Uğur
Eğer parantez kullanmazsak;
def greet_user user_name
puts "Merhaba #{user_name}"
end
greet_user "Uğur" # Merhaba Uğur
şeklinde olur. Keza, pek çok dilde, fonksiyon eğer bir şey dönerse geriye, mutlaka return
komutu kullanılır. Ruby'de buna da gerek yok. Çünkü her method (yani Fonksiyon) mutlaka default olarak bir şey döner. Hiçbir şey dönmese bile nil
döner. Bu bakımdan da;
def greet_user user_name
"Merhaba #{user_name}"
end
puts greet_user "Uğur" # Merhaba Uğur
Comments (Yorum Satırları)
Her dilde olduğu gibi Comment out yani "işaretli kısmı çalıştırma" demek için kullandığımız şey Ruby'de de var.
Comment için #
işareti kullanılıyor. Genelde line-comment
yani satır bazlı, ve block-comment
yani kod bloğu bazlı yorum yapma şekilleri var.
# Bu satır line-comment, yani tek satırlı yorum
# Bu kısım block-comment
#
# def test_user
# true
# end
# ya da
=begin
Bu yorum...
Bu da yorum...
Hatta bu da...
=end
Gördüğünüz gibi block-comment
için ilave olarak =begin
ve =end
kelimeleri kullanılabiliyor.
Rezerve Edilmiş Kelimeler
Her dilde olduğu gibi Ruby'de de daha önceden rezerve edilmiş bazı kelimeler bulunmaktadır. Bu kelimeleri değişken ya da method adı olarak kullanamıyoruz. Bu kelimeler Ruby komutları ve özel durumlar için rezerve edilmiş.
Kelime | Kelime |
---|---|
BEGIN | next |
END | nil |
alias | not |
and | or |
begin | redo |
break | rescue |
case | retry |
class | return |
def | self |
defined? | super |
do | then |
else | true |
elsif | undef |
end | unless |
ensure | until |
false | when |
for | while |
if | yield |
in | __FILE__ |
module | __LINE__ |