Ruby gayet guzel dil :)
Acikcasi Python ogrendim ama Ruby'e de basladim ben. Kisa surede bitirip bilhassa Rails'e bakmak istiyorum :)
Bu dillerde uzman olmayi isterdim Ruby gercekten gelisim kaydeden bi dil. Ama hala Python'ın eline su dokecegine inanmiyorum ben.
Aslinda universitelerimizde de Python ogretiliyor :)
Python ve Ruby syntax yapisina bakinca hemen hemen ayni yapilarda olduklari gorunuyor fakat Ruby kimi zamanlarda daha komplex. Programlama paradigmalari konusunda, syntax gibi konularda cok benzerler.
Ruby dilini inceledigimde ilk gozume carpan, (senin de carpmistir mutlaka) Ruby'de her sey class olarak tanimliyoruz yani her sey OOP olarak yapiliyor, primitive tipler dedigimiz tipler Ruby'de yok. Ilkel veri tipleri yani bunlar.
Python ise 3 farkli tipte kullaniliyor biliyosundur zaten. OOP, Fonksiyonel ya da scripting.. Bu scripting olayı server'larda da çalıştırılabilirlik sağlıyor. Yani server sistemlerinde bir avantajı da o. Aslında Ruby de çalıştırılabilir.
Python ayrica cogu ozellikleriyle ki bu ozelliklerden birisi unicode, Ruby diline gore daha geliskin. Ben Linux altinda neler cektim :(
Ruby aslinda atilimini RoR ile yapti. Bildigimiz Rails ile yani. Bu web framework'u ayni django gibi populer. Genelde insanlarin Ruby kullanma tercihi RoR tabanli. Ruby takimi da belli ki bunun uzerine yogunlasmis durumda.
Python ise cok farkli bi duzeyde
Robotik sistemlerde kullaniliyor(sinyal yollama islemi yaptim). Biyoenformatik sistemler(bu konuda hic tecrubem olmadi) kullaniliyor fakat parantezde de belirttim tecrubem olmadi :)
PiSi Linux, Ubuntu, Gentoo gibi cogu dagitimin Boot ekranindaki grafik arayuzlu yukleyici ve paket yoneticileri de yine Python ile yazildi.
Ben yillar once Pardus icin yazilimlari paketliyordum. Burada pspec.xml ve actions.py gibi 2 dosya sartti :) Yine python bilgisi sart oluyordu yani. (Pisi Linux) (https://github.com/pisilinux/PisiLinux)
Dokumantasyon sorunu da var tabii Ruby icin. Ruby robotik alaninda kullaniliyor evet. Ama Python kadar kolay degil. Fakat hatirlarsan IronRuby kullanip bir editor yazmistim ben :)
Sadece ruby ile kalmayip Python'ın fonksiyonel yonlerini de alirsan guzel olur :)
Mesela RhS scripting, oop ve fonksiyonel olarak calisabilirse mukemmel olur. Bu sayede aslinda sadece web dili olmaktan da cikar. Python pip, Ruby gem kullaniyor belki bu tip bir de paket yoneticisi yazildi mi mukemmel olabilir :)
gonul ister ki Lisp dialektigi olabilsin ama onun da syntax'i cok karmasik yahu :) okulda gosterdilerdi de zordu baya.
Python'a devam edecek olursak yine cogu buyuk sistem Python kullaniyor fakat bu klise artik :) diller kisisellestirilebilir olduklarindan bu kurumlar onlari kendilerine gore dallandirdilar degistirdiler.
Ornek CPython implementasyonu gibi. Ya da PyPy gibi. Ruby'nin eksik noktalarindan birisi bu. Ruby henuz taninirligini artirirken PyPy, CPython gibi implementasyonlar hazirlanmisti. Yazanlari google gibi kurumlarda is sahibi olmuslardi. Blender'ı belki duymussundur. Yine o da Python kullanilan yazilimlardan. Tabii ki tek basina Python degil :)
Sen yine de Python'dan da etkilen derim :)
Ozellikle CPython ve PyPy implementasyonlarına bakıp onların hızı nasıl sağladığını görebilirsin normal Python'a göre hızlarında performanslarında artış var çünkü.
Ayrica NumPy ve PiL de esgecilmemeli :)
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]