Ruby on Rails

Vikipedi, özgür ansiklopedi
Atla: kullan, ara
Ruby on Rails
Ruby on Rails
Geliştiren(ler) Rails Core Team
Güncel sürüm 4.1.8
(17 Kasım 2014 [1])
Önizleme sürümü 4.2.0.beta4
(30 Ekim 2014 [2])
İşletim sistemi Çoklu platform
Programlama dili Ruby
Yazılım türü Web uygulama çatısı
Lisans MIT Lisansı
Resmî sitesi http://rubyonrails.org/

Ruby On Rails ya da Rails, Ruby diliyle yazılmış, açık kaynak kodlu bir web uygulama geliştirme çatısıdır. Web uygulamaları için ihtiyaç duyulabilecek bütün bileşenleri barındıran Rails; model-view-controller, don't repeat yourself, convention over configuration yaklaşımlarını temel alır.[3]

Geçmiş[değiştir | kaynağı değiştir]

Ruby on Rails, David Heinemeier Hansson tarafından, gerçek bir proje yönetim aracı olan Basecamp uygulamasından çıkarılmış bir çatıdır. İlk versiyonu Haziran 2004'de, en son ana versiyon 4.1 ise 8 Nisan 2014'te duyurulmuştur.

Sürüm Geçmişi
Sürüm Tarih
1.0 13 Aralık 2005[4]
1.2 19 Ocak 2007[5]
2.0 7 Aralık 2007[6]
2.1 1 Haziran 2008[7]
2.2 21 Kasım 2008[8]
2.3 16 Mart 2009[9]
3.0 29 Ağustos 2010[10]
3.1 31 Ağustos 2011[11]
3.2 20 Ocak 2012[12]
4.0 25 Haziran 2013 [13]
4.1 8 Nisan 2014 [14]

Felsefesi[değiştir | kaynağı değiştir]

Rails, temel olarak Convention over Configuration ve Don't Repeat Yourself (DRY) yaklaşımları üzerine kurulmuştur.

"Convention over Configuration" ile, Ruby on Rails çatısı tarafından daha önceden belirlenmiş kurallara uygun yazılım geliştirilerek, çeşitli konfigürasyonel ve yazılımla ilgili rutin işlerin otomatik olarak Ruby on Rails çatısı tarafından yapılması kastedilmektedir. En iyi örnek, Ruby on Rails'in Model altyapısını oluşturan ActiveRecord yapısından verilebilir. Rails'de yazılım geliştirmeye başlamadan önce, veritabanında bulunan tablolar isimlendirilirken, İngilizce çoğul olacak şekilde verilirse (örneğin; customers, products vb.), kod içinde sadece customer.products şeklinde yazarak iki tablo arasında ilişki sağlanabilir ve müşterinin satın aldığı ürünlerin bilgisine başka herhangi bir kod yazmaya gerek kalmadan ulaşılabilir. Yazılımı kolaylaştırıcı benzer kurallar Ruby on Rails'de oldukça fazladır.

Don't Repeat Yourself (DRY) felsefesi ise aynı uygulama içinde aynı işi yapan kod parçalarının en aza indirilmesini öngörür. Örneğin, View altyapısında kullanılan "partial" yapısı, yazılmış bir kod parçacığını, birçok farklı noktada kullanabilmeyi sağlar. Rails, uygulamanın küçük parçalara ayrılarak, kod tekrarını önlemek konusunda oldukça başarılıdır.

Rails Yapısı[değiştir | kaynağı değiştir]

MVC yapısını oluşturan genel modüller şöyledir:

Rails Modülleri[değiştir | kaynağı değiştir]

  • ActionMailer
  • ActionController
  • ActionView
  • ActionWebService
  • ActiveRecord
  • ActiveSupport

Kaynaklar[değiştir | kaynağı değiştir]

  1. ^ "Rails 3.2.21, 4.0.12, and 4.1.8 have been released". http://weblog.rubyonrails.org/2014/11/17/Rails-3-2-21-4-0-12-and-4-1-8-have-been-released/. 
  2. ^ "Rails 4.2.0.beta4 has been released!". http://weblog.rubyonrails.org/2014/10/30/Rails-4-2-0-beta4-has-been-released/. 
  3. ^ "Getting Started with Rails". Rails Guides. http://guides.rubyonrails.org/getting_started.html#what-is-rails-questionmark. 
  4. ^ "Rails 1.0: Party like it's one oh oh!". Riding Rails. http://weblog.rubyonrails.org/2005/12/13/rails-1-0-party-like-its-one-oh-oh/. 
  5. ^ "Rails 1.2: REST admiration, HTTP lovefest, and UTF-8 celebrations". Riding Rails. http://weblog.rubyonrails.org/2007/1/19/rails-1-2-rest-admiration-http-lovefest-and-utf-8-celebrations/. 
  6. ^ "Rails 2.0: It's done!". Riding Rails. http://weblog.rubyonrails.org/2007/12/7/rails-2-0-it-s-done/. 
  7. ^ "Rails 2.1: Time zones, dirty, caching, gem dependencies, caching, etc". Riding Rails. http://weblog.rubyonrails.org/2008/6/1/rails-2-1-time-zones-dirty-caching-gem-dependencies-caching-etc/. 
  8. ^ "Rails 2.2: i18n, HTTP validators, thread safety, JRuby/1.9 compatibility, docs". Riding Rails. http://weblog.rubyonrails.org/2008/11/21/rails-2-2-i18n-http-validators-thread-safety-jruby-1-9-compatibility-docs/. 
  9. ^ "Rails 2.3: Templates, Engines, Rack, Metal, much more!". Riding Rails. http://weblog.rubyonrails.org/2009/3/16/rails-2-3-templates-engines-rack-metal-much-more/. 
  10. ^ "Rails 3.0: It's ready!". Riding Rails. http://weblog.rubyonrails.org/2010/8/29/rails-3-0-it-s-done/. 
  11. ^ "bumping to 3.1.0". https://github.com/rails/rails/commit/505e84599aff6abf719484636b0515e1ce2e2220. 
  12. ^ "Rails 3.2.0: Faster dev mode & routing, explain queries, tagged logger, store". Riding Rails. http://weblog.rubyonrails.org/2012/1/20/rails-3-2-0-faster-dev-mode-routing-explain-queries-tagged-logger-store/. 
  13. ^ "Rails 4.0: Final version released!". Riding Rails. http://weblog.rubyonrails.org/2013/6/25/Rails-4-0-final/. 
  14. ^ "Rails 4.1.0: Spring, Variants, Enums, Mailer previews, secrets.yml". Riding Rails. http://weblog.rubyonrails.org/2014/4/8/Rails-4-1/. 

Dış bağlantılar[değiştir | kaynağı değiştir]