HELLO, I’M SERHAT AND THIS IS MY FANCY TITLE.

Ruby günlüğü - gün 10


Ruby'de sözlükler (hash) oldukça geniş alanlarda kullanılabilirler. Bunu Python'da tecrübe etmiştim. Dizilerden bazı anlarda daha maharetli olacaklardır. Dizileri en basit anlamıyla, nesneler grubu olarak tanımlayabiliriz, sözlükler için de aslında bu tanım yanlış olmayacaktır. Diziler, nesnelerin tanımlanmış bir sırada ve biçimde toplu halde bulunmasıdır, hash yani sözlüklerde ise durum biraz daha farklı. Sözlükler dizilerden farklı olarak anahtar-değer mantığı ile çalışır.

sozluk = {'isim' => 'Mustafa Serhat', 'nick' => 'msdundar'}

Burada 2 adet sözlük öğemiz var. Bir tanesi isim diğeri ise nick. Bu öğeler (yani anahtarlar - key), karşılarında ki değere (value) sahip.

Continue reading

Ruby günlüğü - gün 9


Ruby'de basit bir dizi şöyle tanımlanır;

dizi = [1,2,3,4,5,6]

Dizinin elemanlarını, dizide ki yerine göre ekrana yazdırırız;

puts dizi[3]
> 4

Sonuç 4 olacaktır. Çünkü bir çok programlama dilinde karşılaşmış olacağınız üzere, programlama dillerinde sayım işlemine 0'dan başlanır.

Continue reading

Ruby günlüğü - gün 8


Regular Expressions konusu aslında oldukça detaylı bir konu, ama dilden dile çok fazla fark göstermiyor, örneğin PHP'de ilk iki karakteri kastetmek istediğimizde %.2a (a burada temsili ifade) kullanıyoruz. Ruby'de ise, ^.. kullanıyoruz. Ruby düzenli ifadeler kullanımı konusunda Perl'e çok benziyor ve NFA eşleştirmesini kullanıyor.

Bu düzenli ifadeler nerede işimize yarar, açıkcası bende bir proje üzerinde çalışırken önemini anlamıştım. Bir kullanıcı adı ve şifre girişi düşünün, kullanıcı adı olarak öğrenci numarası kullanılacak ve okulumun öğrenci numaraları 8 haneli. İlk 2 hane okula giriş yılını temsil ediyor, kullanıcı adında bunu kontrol ettirip, öğrenci olmayanların girmesine bir ölçüde engel olmalıyız.

Continue reading

Ruby günlüğü - gün 7


Daha önce söylemiştim, Ruby case-sensitive bir dildir. Hemde Ruby'de bu büyük-küçük harf olayı arka planda çok farklı anlamlar doğurabiliyor. Şöyle görelim:

ruby-and-constants

Pi = 2 dedik ve ekrana bastırdı, daha sonra Pi = 200 dedik, yine ekrana bastırdı ama bi uyarı verdi already initialized constant Pi yani demek oluyor ki, "eyy yazılımcı daha önceden Pi sabitine başka bir değer vermiştin". Yazılımcı olarak bizde diyoruz ki "ama ben onun sabit olduğunu söylemedim ki sana?", Ruby de hemen yapıştırıyor cevabı "o zaman niye büyük harfle başladın arkadaşım!".

Continue reading

Ruby günlüğü - gün 6


Şu aralar günlüğü biraz boşlamıştım açıkcası, farklı projeler içerisine girip Ruby'yi biraz unuttum, ama bugün bulduğum mis gibi bir kitapla tekrar kaldığım yerden devam ediyorum. Her programcının elinin altında bulunması gereken türden bir düzenli ifadeler kitabı.

En son değişkenler ve bazı koşullu ifadeler hakkında biraz yazmıştım. Şimdi sıra basit döngülerde.

Continue reading