Ruby on Rails

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.[2]

Ruby on Rails
Geliştirici(ler) Rails Core Team
Güncel sürüm 6.0.1 / 30 Haziran 2016) (2016-06-30)[1]
Programlama dili Ruby
İşletim sistemi Çoklu platform
Tür Web uygulama çatısı
Lisans MIT Lisansı
Resmî sitesi http://rubyonrails.org/
Kod deposu

Geçmiş

Ruby on Rails, David Heinemeier Hansson tarafından, gerçek bir proje yönetim aracı olan Basecamp21 Ocak 2008 tarihinde Wayback Machine sitesinde arşivlendi. uygulamasından çıkarılmış bir çatıdır. İlk versiyonu Haziran 2004'te, mevcut son ana versiyon 5.0 ise 30 Haziran 2016'da duyrulmuştur.

Sürüm Geçmişi
SürümTarihDeğişiklikler / Yeni ÖzelliklerNotlar
1.013 Aralık 2005) (2005-12-13)[3]
1.219 Ocak 2007) (2007-01-19)[4]
2.07 Aralık 2007) (2007-12-07)[5]
2.11 Haziran 2008) (2008-06-01)[6]
2.221 Kasım 2008) (2008-11-21)[7]
2.316 Mart 2009) (2009-03-16)Rack, iç içe form desteği, şablon ve şablon motorlarında büyük güncellemeler[8]
3.029 Ağustos 2010) (2010-08-29)Merb ile birleşim[9]
3.131 Ağustos 2011 31 Ağustos 2011) (2011-08-31)Asset Pipeline, Streaming, jQuery, CoffeeScript ve Sass desteği[10]
3.220 Ocak 2012) (2012-01-20)Journey engine, Tagged Logging[11]
4.025 Haziran 2013) (2013-06-25)Russian Doll Caching, Turbolinks, Live Streaming[12]
4.18 Nisan 2014) (2014-04-08)Spring, Enumeration, Mailer önizleme, secrets.yml[13]
4.219 Aralık 2014) (2014-12-19)Active Job, asenkron email, Adequate Record, Web Console[14]
5.030 Haziran 2016) (2016-06-30)ActionCable, API modu[15]
5.127 Nisan 2017) (2017-04-27)[16]
5.29 Nisan 2018) (2018-04-09)[17]
6.015 Ağustos 2019) (2019-08-15)[18]

Felsefesi

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ı

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

  • ActiveRecord (Model)
  • ActionView (View)
  • ActionController (Controller)

Rails Modülleri

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

Kaynakça

  1. "Rails 6.0.1 released". 6 Kasım 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Kasım 2019.
  2. "Getting Started with Rails". Rails Guides. 29 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 16 Kasım 2014.
  3. "Rails 1.0: Party like it's one oh oh!". Riding Rails. 17 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  4. "Rails 1.2: REST admiration, HTTP lovefest, and UTF-8 celebrations". Riding Rails. 10 Mart 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  5. "Rails 2.0: It's done!". Riding Rails. 18 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  6. "Rails 2.1: Time zones, dirty, caching, gem dependencies, caching, etc". Riding Rails. 24 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  7. "Rails 2.2: i18n, HTTP validators, thread safety, JRuby/1.9 compatibility, docs". Riding Rails. 18 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  8. "Rails 2.3: Templates, Engines, Rack, Metal, much more!". Riding Rails. 3 Mayıs 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  9. "Rails 3.0: It's ready!". Riding Rails. 2 Kasım 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  10. "bumping to 3.1.0". 19 Haziran 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  11. "Rails 3.2.0: Faster dev mode & routing, explain queries, tagged logger, store". Riding Rails. 9 Mart 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Kasım 2014.
  12. "Rails 4.0: Final version released!". Riding Rails. 27 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 31 Ekim 2014.
  13. "Rails 4.1.0: Spring, Variants, Enums, Mailer previews, secrets.yml". Riding Rails. 8 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Ekim 2014.
  14. "Rails 4.2: Active Job, Asynchronous Mails, Adequate Record, Web Console, Foreign Keys". 9 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Şubat 2015.
  15. "Rails 5.0: Action Cable, API mode, and so much more". 11 Ocak 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Kasım 2019.
  16. "Rails 5.1: Loving JavaScript, System Tests, Encrypted Secrets, and more". 29 Eylül 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Kasım 2019.
  17. "Rails 5.2.0 FINAL: Active Storage, Redis Cache Store, HTTP/2 Early Hints, CSP, Credentials". 26 Temmuz 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Kasım 2019.
  18. "Rails 6.0: Action Mailbox, Action Text, Multiple DBs, Parallel Testing, Webpacker by default, and Zeitwerk". 2 Aralık 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Kasım 2019.

Dış bağlantılar

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.