# FreeBSD 10.1’de RVM ile Ruby on Rails Kurulumu: Tam Kılavuz
FreeBSD sunucunuzda dinamik bir web uygulaması geliştirmek istiyorsunuz ama nereden başlayacağınızı bilmiyor musunuz? Ruby on Rails, güçlü ve esnek bir web uygulama çerçevesi sunuyor, ancak FreeBSD 10.1 gibi bir sistemde kurulumu biraz zorlayıcı olabilir. Bu kapsamlı kılavuzda, RVM (Ruby Version Manager) kullanarak FreeBSD 10.1’e Ruby on Rails’i adım adım nasıl kuracağınızı, olası sorunları nasıl aşacağınızı ve performansınızı nasıl optimize edeceğinizi öğreneceksiniz. Bu rehber, yeni başlayanlardan ileri seviye geliştiricilere kadar herkes için faydalı bilgiler sunmaktadır.
1. Temel Kavramlar: Ruby, Rails ve RVM
Öncelikle, Ruby on Rails’i anlamak için temel kavramları öğrenmeliyiz. Ruby, dinamik, nesne yönelimli bir programlama dilidir. Rails ise Ruby ile yazılmış, model-view-controller (MVC) mimarisini kullanan bir web uygulama çerçevesidir. Hızlı prototipleme ve verimli geliştirmeye olanak tanır. RVM ise, farklı Ruby sürümlerini yönetmenizi ve birbirleriyle çakışmadan çalıştırmanızı sağlayan bir araçtır. FreeBSD’de paket yöneticisi olan pkg’yi kullanarak RVM’yi kolayca kurabiliriz. Ancak, RVM’nin bağımlılıklarını karşılamak için öncelikle bazı temel paketleri yüklememiz gerekebilir. Bu paketler arasında gcc, make, autoconf, libtool ve curl bulunur. Bu paketlerin tam listesi ve FreeBSD sürümünüze göre farklılık gösterebileceğini unutmayın.
2. FreeBSD 10.1’de Gerekli Paketlerin Kurulumu
FreeBSD 10.1 sisteminizde RVM’yi çalıştırmak için öncelikle bazı temel paketleri kurmanız gerekmektedir. Bu paketler, RVM’nin derleme ve çalışma zamanı bağımlılıklarını karşılar. pkg paket yöneticisini kullanarak bu işlemi kolayca gerçekleştirebilirsiniz. Aşağıdaki komutu terminalinizde çalıştırın:
sudo pkg update && sudo pkg install git gcc make autoconf libtool curl
Bu komut, öncelikle paket listesini günceller (sudo pkg update) ve ardından gerekli paketleri yükler. Kurulum sırasında şifrenizi girmeniz istenecektir. Kurulum tamamlandıktan sonra, bir sonraki adıma geçebilirsiniz. Eğer bir hata alırsanız, FreeBSD’nin resmi dokümanlarına bakarak sorunu çözmeye çalışabilirsiniz. Sisteminizin güncel olduğundan emin olmak da oldukça önemlidir.
3. RVM’nin Kurulumu ve Ruby Sürümünün Seçimi
Gerekli paketleri kurduktan sonra, RVM’yi kurabiliriz. Aşağıdaki komutu terminalinizde çalıştırın:
curl -sSL https://get.rvm.io | bash -s stable
Bu komut, RVM’nin en son kararlı sürümünü indirip kuracaktır. Kurulum tamamlandıktan sonra, RVM’yi kaynak dosyalarınıza eklemeniz gerekir. Bunun için aşağıdaki komutu kullanın:
source ~/.rvm/scripts/rvm
Şimdi, RVM ile farklı Ruby sürümlerini yönetebilirsiniz. Örneğin, Ruby 2.7.x sürümünü kurmak için aşağıdaki komutu kullanabilirsiniz:
rvm install 2.7.6
(Not: En son kararlı Ruby sürümünü kullanmanız önerilir. rvm list known komutu ile mevcut sürümleri görebilirsiniz.) Kurulum tamamlandıktan sonra, kullanılacak Ruby sürümünü seçmeniz gerekir:
rvm use 2.7.6 --default
Bu komut, varsayılan Ruby sürümünü 2.7.6 olarak ayarlayacaktır.
4. Ruby on Rails’in Kurulumu
Ruby kurulumundan sonra, Rails’i kurmaya başlayabiliriz. Aşağıdaki komutu kullanarak Gem paketi yöneticisi ile Rails’i yükleyebilirsiniz:
gem install rails
Bu komut, Rails’i ve gerekli bağımlılıklarını kuracaktır. Kurulum biraz zaman alabilir. Kurulum tamamlandıktan sonra, bir Rails uygulaması oluşturabilirsiniz:
rails new my_app
Bu komut, my_app adında yeni bir Rails uygulaması oluşturacaktır. cd my_app komutu ile bu dizine girin.
5. Uygulamanın Çalıştırılması ve Temel Ayarlar
Yeni oluşturduğunuz Rails uygulamasını çalıştırmak için aşağıdaki komutu kullanın:
rails server
Bu komut, uygulamayı varsayılan port olan 3000 numaralı portta çalıştıracaktır. Uygulamayı tarayıcınızda http://localhost:3000 adresinden ziyaret edebilirsiniz. Bu aşamada, Rails’in varsayılan “Welcome aboard” sayfasını göreceksiniz. Bu, kurulumun başarılı olduğunu gösterir.
6. Veritabanı Bağlantısı ve Örnek Uygulama
Bir veritabanı kullanarak gerçek bir uygulama geliştirmek için, veritabanı bağlantınızı yapılandırmanız gerekir. Örneğin, PostgreSQL kullanıyorsanız, database.yml dosyasını düzenleyerek veritabanı bilgilerinizi girmeniz gerekecektir. Daha sonra, rails db:create ve rails db:migrate komutları ile veritabanı tablolarını oluşturabilirsiniz. Bu adımlar, uygulamanızın veritabanı ile etkileşim kurmasını sağlar.
Gerçek Dünya Senaryosu: Bir e-ticaret sitesi geliştiriyorsunuz ve ürün bilgilerini veritabanında saklamanız gerekiyor. PostgreSQL kullanarak ürünlerin adını, fiyatını ve açıklamasını içeren bir tablo oluşturabilir ve Rails’in ORM (Object-Relational Mapping) özelliği olan ActiveRecord ile bu tabloya kolayca veri ekleyip okuyabilirsiniz. Bu, veritabanı işlemlerini kodunuzda daha okunabilir ve yönetilebilir hale getirir.
7. Performans Optimizasyonu ve İleri Seviye Konular
Rails uygulamalarının performansını optimize etmek için birçok yöntem vardır. Örneğin, Nginx ve Puma gibi performans odaklı web sunucuları kullanabilir, veritabanı sorgularınızı optimize edebilir ve önbellekleme mekanizmaları kullanabilirsiniz. Ayrıca, kodunuzun performansını analiz etmek için çeşitli araçlar kullanabilirsiniz. rack-mini-profiler gibi gem’ler, sorgularınızın çalışma sürelerini ve diğer performans metriklerini gösterir.
İleri Düzey Konular: Edge case’ler, uygulamanızın beklenmedik durumlarda nasıl davranacağını anlamak anlamına gelir. Örneğin, bir kullanıcı hatalı bir veri girdiğinde veya sunucu bir hata verdiğinde uygulamanızın çökmemesini sağlamanız gerekir. Bu durumlar için hata yönetimi ve istisna yakalama mekanizmaları kullanabilirsiniz. Ayrıca, güvenlik açıklarını önlemek için kodunuzun güvenliğini düzenli olarak kontrol etmeniz önemlidir. Bu konuda detaylı bilgi için [Fatih Soysal’ın bloguna](https://fatihsoysal.com) göz atabilirsiniz.
8. Öğrenme Yol Haritası
Yeni Başlayan: Bu kılavuzdaki adımları takip ederek, basit bir Rails uygulaması oluşturabilir ve çalıştırabilirsiniz. Basit bir “Merhaba Dünya” uygulaması oluşturmayı deneyin.
Orta: Gerçek dünya senaryolarını içeren bir uygulama geliştirin. Örneğin, basit bir blog uygulaması veya görev yönetim uygulaması oluşturabilirsiniz. Performans optimizasyonu ipuçlarını uygulayarak uygulamanızın hızını artırabilirsiniz.
İleri Düzey: Karmaşık bir uygulama geliştirin ve performans analizi yapın. Edge case’leri ele alarak uygulamanızın güvenliğini ve istikrarını sağlayın. Farklı veritabanı sistemleri ve önbellekleme mekanizmaları ile deney yapın.
9. Sonuç
Bu kılavuzda, FreeBSD 10.1’de RVM kullanarak Ruby on Rails’i kurmayı ve basit bir uygulama oluşturmayı öğrendiniz. Ancak, Rails geliştirmenin çok daha derin ve geniş bir alan olduğunu unutmayın. Sürekli öğrenme ve pratik yaparak becerilerinizi geliştirebilirsiniz.
Sıkça Sorulan Sorular:
1. RVM’yi güncellemek için nasıl bir komut kullanmalıyım? rvm get stable komutu RVM’yi günceller.
2. Farklı bir Ruby sürümü nasıl kurulur? rvm install komutunu kullanabilirsiniz (örneğin: rvm install 3.2.2).
3. Rails uygulamasının performansını nasıl analiz edebilirim? rack-mini-profiler gibi gem’ler kullanabilirsiniz.
4. Veritabanı bağlantımı nasıl yapılandırırım? config/database.yml dosyasını düzenlemeniz gerekir.
5. Güvenlik açıklarını nasıl önleyebilirim? Kodunuzu düzenli olarak güvenlik açısından taratmalı ve güvenlik en iyi uygulamalarına uymalısınız.
Yazar: Fatih Soysal
