Ruby on Rails Part1

Rails de bir web projesi oluşturmaya başlamadan önce Rails , Rails de kullanılan MVC mimarisi ve Rails bileşenlerini inceleyelim. Daha sonra;

UYARI : Çalışmalar Rails 3.2 nin versiyonları ile olacaktır. 3.2 altındaki versiyonlarda bu kodlar ile çalışmak isterseniz hatalar ile karşılaşabilirsiniz.

Versiyonlarınızı öğrenmek için terminalde;

$ rails -v            
Rails 3.2.8 


$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [i686-linux] 

komutlarından yararlanabilirsiniz.

Rails Nedir ?

Rails Ruby dili ile yazılmış, daha az kodla ve daha fazla zevkle yazmamızı sağlayan,açık kaynak bir web uygulaması frameworktür.

Rails felsefesi birkaç temel üzerine oturmuştur:

MVC Mimarisi Nedir?

Rails Models, Views ve Controllers mimarisinden oluşmaktadır.  

MVC mimarisi bize;

1.Models

2.Views

3.Controllers

Rails Bileşenleri Nelerdir?

Rails kurulduğunda kendine özgü birçok gem ile birlikte gelmektedir.

1.Action Pack

Action Pack Action Controller, Action View ve Action Dispatch içeren tek bir gemdir. “MVC” nin “VC” bölümü oluşturmaktadır.

1.1.Action Controller

Action Controller Rails uygulamasından gelen istekleri amaçlarına göre seçip çıkartarak uygun yerlere dağıtarak işler. Oturum yönetimi, şablon oluşturma ve yönlendirmeler Action Controller tarafından sağlanmaktadır.

1.2.Action Dispatch

Action Dispatch, gelen web isteklerinin ,sizin uygulamanıza veya diğer bir Rack uygulamasına dağıtımını sağlar.

1.3.Action View

Action View, Rails uygulamasında görselliği yönetmektedir. Standart olarak HTML ve XML olarak çıktı üretilmesine olanak sağlar.

2.Action Mailer

Action Mailer, E-posta sevislerini ayarlamak için kullanılan bir frameworktür.

3.Active Model

Active Model, Action Pack gem servisleri ve Active Record gibi Nesne İlişkili Haritalama gemleri arasında tanımlanan bir arayüz sağlar.

4.Active Record

Active Record veritabanı bağımsızlığı, temel CRUD işlevlerini ve bir başka modelle ilişki kurma yeteneğini sağlar.

5.Active Resource

Active Reource, iş nesneleri ve RESTful web servisleri arasındaki bağlantıyı yönetmek için sunulan bir frameworktür.

6.Active Support

Active Support, Rails uygulamaları için yazılmış, birçok Ruby kütüphanesine sahip geniş bir kolleksiyondur.

7.Railties

Railties yeni bir web uygulaması için Rails kodlarını inşa etmektedir.

REST ( Representational State Transfer)

Rest, RESTfull mimarisinin temelidir. Roy Fielding’in ağ temelli yazılım mimarileri ve stillerini belirten doktora tezinden esinlenmiştir. Bu tezle Rails uygulamasına şu ana özellikler kazandırılmıştır :

Örneğin;

DELETE /photos/17

gibi 17 id sine sahip bir dosyanın silinmesi istenirse Rails bunu yöneterek sizi karmaşık işlerden ve web tarayıcısında karşılacağınız süprizlerden kurtarır.

Devamı Yeni Bir Rails Projesi Oluşturma sayfasındadır.

Yararlanılan Kaynak ve Detaylı Bilgi:

Ruby on Rails

GitHub'dayım