İçeriğe atla

Ruby

Vikipedi, özgür ansiklopedi
15.27, 13 Kasım 2014 tarihinde Bdscvr (mesaj | katkılar) tarafından oluşturulmuş 14847258 numaralı sürüm (sürüm 2.1.5 v1...)
Ruby
Paradigmasıçok paradigmalı: nesneye yönelik, fonksiyonel, reaktif
İlk çıkışı1995
TasarımcıYukihiro Matsumoto
GeliştiriciYukihiro Matsumoto ve diğerleri
Kararlı sürüm2.1.5 (13 Kasım 2014 [1])
Önizleme sürümü2.2.0-preview1 (18 Eylül 2014)
Önemli uygulamalarıRuby MRI, YARV, JRuby, Rubinius, Maglev, IronRuby, MacRuby, HotRuby, RubyMotion, mruby
EtkilendikleriSmalltalk, Perl, Lisp, Scheme, Python, CLU, Eiffel, Ada, Dylan, C++
EtkiledikleriClojure, D dili,[2] Groovy, Nu, Falcon, Ioke, Mirah, Elixir, Julia dili, Swift
İşletim sistemiÇapraz platform yazılımları
LisansRuby Lisansı veya GNU Genel Kamu Lisansı v2
Olağan dosya uzantıları.rb, .rbw
Web sitesiwww.ruby-lang.org

Ruby, nesneye yönelik, dinamik, reflektif bir programlama dilidir.

Sözdizimi itibarı ile, Ada, Perl, Smalltalk, Lisp, Eiffel[3] gibi programlama dillerinden etkilenmiştir ve Python ile kimi ortak sözdizimi özelliklerine sahiptir. Fonksiyonel, nesneye yönelik, dinamik, reflektif gibi çoklu programlama paradigmalarını destekler.

1995 yılında Yukihiro Matsumoto tarafından Japonya'da geliştirilmeye başlanan Ruby, bir özgür yazılımdır ve GPL ile lisanslanmıştır.

Özellikler

Ubuntu'da Ruby programlama dili
  • Nesneye yönelim
  • 4 düzeyde değişken tanımlanabilir:Global, class, instance ve local
  • İstisna işleme
  • Çöp toplama
  • Yüksek taşınabilirlik
  • Geniş standart kütüphane desteği
  • Perl benzeri dil seviyesinde doğal düzenli ifade desteği

Bununla beraber Ruby içindeki UTF-8 desteği sınırlıdır.

Sözdizimi ve yapısı

Ruby'nin sözdizimi günümüzde de yoğun olarak kullanılan Perl ve Python ile büyük benzerlikler gösterir. Sınıf ve metot tanımlamaları anahtar kelimelerle belirlenir. Ruby'de Perl'in aksine, değişken adlarının başında belirleyici karakterler ($, @@, % gibi) kullanmak bir zorunluluk değildir. Python'un tersine girintilerin dilin sözdiziminde bir etkisi yoktur.

Ruby, tek çoklu kalıtıma Java gibi izin vermemesine rağmen mixin adı verilen nesnelerle bir çeşit arayüz tanımlama imkânı verir. Ayrıca paketler üzerinden de bu sınırlama geçiştirilebilir.

Ruby'nin tasarımında dikkate alınan diller Ada, Eiffel, Lisp, Perl ve Smalltalk'dur. Dolayısıyla bir betik dili yapısına da sahiptir. Ruby, nesneye yöneliklilik açısından tamamen öyle olan Java ile Smalltalk arası olup yüzde yüz bu paradigmayı uygulamamaktadır.[4].

Kullanılabileceği dizgeler

Ruby yorumlayıcısı birçok işletim sistemi için yazılmıştır. Hemen hemen tüm işletim sistemlerinde çalışabilir. Bunlardan bazıları şunlardır:

Kaynaklar

  1. ^ "Ruby 2.1.5 Released". Erişim tarihi: 13 Kasım 2014. 
  2. ^ Intro - D Programming Language 1.0 - Digital Mars
  3. ^ About Ruby
  4. ^ Ruby [...] is obsessively object oriented. In fact, unless you have programmed in Smalltalk or Eiffel (languages which are even more obsessive than Ruby about objects), it is likely to be the most object oriented language you have ever used. (THE BOOK OF RUBY, HUW COLLINGBOURNE, p. 7)

Ayrıca bakınız

Dış bağlantılar

Şablon:Link KM