Ruby on Rails (RoR), popüler bir açık kaynaklı web uygulama çatısıdır (framework) ve web geliştirme sürecini hızlandırmak amacıyla tasarlanmıştır. Ruby dilinde yazılan Rails, Model-View-Controller (MVC) mimarisiyle çalışır ve yazılım geliştirmede verimliliği artırmayı hedefler. Özellikle başlangıç seviyesindeki geliştiriciler için oldukça erişilebilir olan Ruby on Rails, hızlı prototip oluşturma ve üretim düzeyinde uygulamalar geliştirme imkanı sunar. Bu makalede, Ruby on Rails kullanarak basit bir web uygulaması oluşturmanın adımlarını detaylı bir şekilde inceleceğiz.
1. Ruby ve Rails Kurulumu
Ruby on Rails ile bir web uygulaması geliştirmeye başlamadan önce, önce Ruby dilini ve Rails çerçevesini bilgisayarınıza kurmanız gerekmektedir. İşte adım adım kurulum rehberi:
a. Ruby Kurulumu
Ruby, Ruby on Rails’in temelini oluşturur. İlk adım olarak Ruby’nin bilgisayarınıza kurulması gerekir. Ruby’nin en son sürümünü Ruby’nin resmi sitesinden edinebilirsiniz.
- Windows kullanıcıları: RubyInstaller’ı indirerek kurulumu tamamlayabilirler.
- Mac kullanıcıları: Ruby, MacOS ile birlikte gelir, ancak en güncel sürüm için Homebrew kullanarak Ruby’yi güncelleyebilirsiniz.
- Linux kullanıcıları: Çoğu Linux dağıtımında Ruby, paket yöneticisi ile kurulabilir. Örneğin, Ubuntu üzerinde şu komutla Ruby kurulabilir:bashCopy code
sudo apt-get install ruby-full
Kurulumdan sonra, Ruby’nin doğru şekilde yüklendiğini kontrol etmek için terminal veya komut istemcisine şu komutu yazabilirsiniz:
bashCopy coderuby -v
Bu komut Ruby’nin yüklü olduğunu ve sürüm bilgisini gösterecektir.
b. Rails Kurulumu
Ruby yüklendikten sonra, Rails çerçevesini yüklemek için gem komutunu kullanarak Rails’i kurabilirsiniz. Gem, Ruby için paket yöneticisidir.
bashCopy codegem install rails
Rails yüklendikten sonra, kurulumun başarılı olup olmadığını şu komutla kontrol edebilirsiniz:
bashCopy coderails -v
Bu komut, Rails’in yüklü olduğunu ve sürümünü gösterir.
c. Veritabanı Kurulumu
Rails, varsayılan olarak SQLite veritabanasını kullanır, ancak PostgreSQL veya MySQL gibi başka veritabanlarını da kullanabilirsiniz. SQLite genellikle geliştirme aşamasında tercih edilir, ancak üretim ortamında PostgreSQL gibi güçlü bir veritabanı tercih edilebilir. Rails uygulamanızda veritabanı ayarlarını değiştirmek için config/database.yml
dosyasını düzenlemeniz gerekmektedir.
2. Yeni Bir Rails Uygulaması Başlatma
Rails uygulaması oluşturmak oldukça basittir. Rails’in sunduğu komut satırı araçları sayesinde, bir uygulama başlatmak için birkaç komut yeterlidir.
a. Uygulama Oluşturma
Yeni bir Rails uygulaması oluşturmak için şu komutu kullanabilirsiniz:
bashCopy coderails new myapp
Burada myapp
, oluşturmak istediğiniz uygulamanın adıdır. Bu komut, gerekli tüm dosya yapısını ve dizinleri oluşturacaktır. Uygulamanızın kök dizinine gidin:
bashCopy codecd myapp
b. Sunucuyu Başlatma
Rails uygulamanızın geliştirme aşamasında yerel bir web sunucusu başlatabilirsiniz. Rails, yerel geliştirme için WEBrick
adında bir web sunucusu kullanır. Sunucuyu başlatmak için şu komutu çalıştırabilirsiniz:
bashCopy coderails server
Sunucuyu başlattıktan sonra, uygulamanız varsayılan olarak http://localhost:3000
adresinde çalışacaktır. Tarayıcınızda bu adresi açarak, Rails’in başlangıç sayfasını görüntüleyebilirsiniz.
3. MVC Mimarisine Göre Uygulama Geliştirme
Rails, Model-View-Controller (MVC) mimarisini temel alır. MVC, yazılım uygulamalarını üç temel bileşene ayırarak düzenler: Model (veri yönetimi), View (kullanıcı arayüzü), ve Controller (iş mantığı).
a. Model
Model, uygulamanızın veritabanıyla etkileşimde bulunan kısmıdır. Rails, veritabanı tabloları için sınıflar oluşturur ve bu sınıflar aracılığıyla veri yönetimini sağlar. Örneğin, basit bir “Post” (Yazı) modelini oluşturmak için şu komutu kullanabilirsiniz:
bashCopy coderails generate model Post title:string content:text
Bu komut, bir Post
modeli, bir veritabanı tablosu ve migration dosyası oluşturur. title
ve content
alanları, veritabanındaki posts
tablosunun sütunlarıdır.
Veritabanı tablolarını oluşturmak için şu komutu çalıştırabilirsiniz:
bashCopy coderails db:migrate
Bu komut, belirtilen migration’ları uygulayarak veritabanındaki tabloları oluşturur.
b. Controller
Controller, kullanıcının isteklerini alır ve uygun modelle işleme yaparak sonuçları görüntülemek için view’ı yönlendirir. Örneğin, bir PostsController
oluşturmak için şu komutu çalıştırabilirsiniz:
bashCopy coderails generate controller Posts
Bu komut, PostsController
sınıfını ve ilgili view dosyalarını oluşturur. Controller’da, örneğin bir yazıyı göstermek için şu şekilde bir aksiyon yazabilirsiniz:
rubyCopy codeclass PostsController < ApplicationController
def show
@post = Post.find(params[:id])
end
end
c. View
View, kullanıcıya gösterilecek olan HTML içeriğini barındırır. Rails, HTML şablonlarını dinamik hale getirmek için ERB
(Embedded Ruby) kullanır. View, controller’dan gelen verileri işleyerek kullanıcının ekranına sunar.
Örneğin, bir yazıyı göstermek için show.html.erb
dosyasında şunları yazabilirsiniz:
erbCopy code<h1><%= @post.title %></h1>
<p><%= @post.content %></p>
Bu, controller’dan gelen @post
nesnesinin title
ve content
alanlarını ekrana yazdırır.
4. Formlar ve Kullanıcı Etkileşimi
Rails, form verilerini alıp işlemenin yanı sıra, kullanıcı etkileşimini kolaylaştırmak için güçlü araçlar sunar. Örneğin, bir Post
nesnesini oluşturmak için şu formu yazabilirsiniz:
erbCopy code<%= form_with model: @post do |form| %>
<%= form.text_field :title %>
<%= form.text_area :content %>
<%= form.submit %>
<% end %>
Bu form, bir Post
nesnesi oluşturmak için kullanıcıdan title
ve content
bilgilerini alır.
5. Uygulamanın Yayına Alınması
Rails uygulamaları geliştirme aşamasında oldukça hızlı ve verimli bir şekilde çalışır. Ancak, gerçek dünyada yayına almak için birkaç ek adım gereklidir. Genellikle, Rails uygulamaları Heroku gibi bulut platformlarında barındırılır. Yayına almak için şu adımlar takip edilebilir:
a. Heroku’ya Kaydolma ve Uygulama Oluşturma
Heroku, Rails uygulamaları için popüler bir Platform-as-a-Service (PaaS) sağlayıcısıdır. Heroku üzerinde bir uygulama oluşturmak için şu adımlar izlenir:
- Heroku hesabı oluşturun ve Heroku CLI’yi indirin.
- Rails projenizde Git ile versiyon kontrolü kullanarak uygulamanızı Heroku’ya gönderebilirsiniz.
Heroku üzerinde bir uygulama oluşturmak için şu komutu kullanabilirsiniz:
bashCopy codeheroku create
b. Uygulamanın Yayına Alınması
Git kullanarak, uygulamanızı Heroku’ya push edebilirsiniz:
bashCopy codegit push heroku master
Veritabanını da Heroku’ya yüklemek için şu komutu çalıştırabilirsiniz:
bashCopy codeheroku run rake db:migrate
Son olarak, uygulamanızın adresine giderek yayına alınan web uygulamanızı görebilirsiniz.
6. Sonuç
Ruby on Rails, hızlı ve verimli web uygulamaları geliştirmek için güçlü bir çerçevedir. MVC mimarisi, Rails’in sunduğu kolaylıklar, kapsamlı dokümantasyon ve aktif topluluk desteği, geliştiricilerin uygulamaları hızlı bir şekilde geliştirmelerine olanak tanır. Rails ile web uygulaması geliştirme süreci, başlangıç seviyesindeki geliştiriciler için bile oldukça erişilebilir ve eğlenceli olabilir. Bu kılavuz, Rails ile bir web uygulaması oluşturmak için gereken