Ruby Kullanımı 
ServBay, macOS üzerinde Ruby geliştiricileri için verimli ve esnek bir geliştirme ortamı sunar. ServBay'in paket yönetim sistemi sayesinde, birden fazla Ruby sürümünü paralel olarak kolayca yükleyebilir ve yönetebilirsiniz. Ayrıca, güçlü .servbay.config dosyası ile her bir proje için gerekli Ruby sürümünü belirleyerek geliştirme sürecinizi sadeleştirir ve ortam tutarlılığını garanti altına alırsınız.
Genel Bakış 
Ruby Diline Kısa Bakış 
Ruby, dinamik, açık kaynaklı ve nesne yönelimli bir programlama dilidir. Sade ve zarif sözdizimi ile geliştirici verimliliğine verdiği önem sayesinde bilinir. Ruby, Japon bilgisayar bilimci Yukihiro "Matz" Matsumoto tarafından 1990'ların ortasında geliştirilmiştir. Temel felsefesi “programlamayı daha eğlenceli hale getirmek”tir. Perl, Smalltalk, Eiffel, Ada ve Lisp gibi dillerden etkilenen Ruby, kodun okunabilirliği ve sadeliğini ön plana çıkarır.
Ruby'de her şey bir nesnedir. Nesne yönelimli, prosedürel ve fonksiyonel programlama gibi farklı paradigmalara destek verir. Ruby’nin dünya çapında popülerliğini önemli ölçüde, 2004 yılında David Heinemeier Hansson (DHH) tarafından sunulan Ruby on Rails web uygulama çatısına borçludur; bu çatı, web uygulamalarının geliştirilmesini büyük ölçüde hızlandırmıştır. Bugün Ruby; web geliştirme (Rails, Sinatra), betik yazımı, otomasyon görevleri, prototipleme gibi alanlarda yaygın olarak kullanılır. Ruby ekosistemi; RubyGems (paket yöneticisi) ve Bundler (bağımlılık yöneticisi) gibi araçlara dayanır.
ServBay ile Ruby Desteği 
ServBay, farklı Ruby yorumlayıcı sürümlerini bağımsız paketler olarak yönetir. Bununla aşağıdaki temel avantajları elde edersiniz:
- Çoklu Sürüm Paralel Kullanımı: Birden fazla Ruby sürümünü (örn. Ruby 2.7, 3.0, 3.3, 3.4 vb.) aynı anda yükleyebilir, sürüm çatışmalarından endişe etmeden kullanabilirsiniz.
 - Proje Bazlı Sürüm Kontrolü: ServBay'e özgü 
.servbay.configdosyası sayesinde, her proje için ihtiyaç duyulan Ruby sürümünü tam olarak belirleyebilirsiniz. - Kolay Yönetim: ServBay'in görsel arayüzü üzerinden Ruby sürümlerini kolayca görebilir, yükleyebilir veya kaldırabilirsiniz.
 - Entegre Gem Yönetimi: Ruby kurulduktan sonra, doğrudan 
gemkomutunu kullanarak RubyGems paketlerini yönetebilirsiniz. 
Farklı Ruby sürümlerine sahip eski projeleri sürdürmesi gereken, yeni projeler (örneğin Ruby on Rails uygulamaları) geliştiren veya özel Ruby araçlarıyla çalışan geliştiriciler için bu özellikler kritik önemdedir.
Ruby Paketlerine Erişim 
- ServBay uygulamasını açın.
 - Sol navigasyon menüsünde 
Paketler (Packages)seçeneğine tıklayın. Paketlersayfasında aşağıya kaydırın veya sol bölmedeki alt liste üzerindenLanguages->Rubyyolunu seçin.- Sağda mevcut tüm Ruby paketlerinin listesi görüntülenecektir.
 

Ruby Kurulumu 
Paket listesi; her Ruby sürümünün durumunu aşağıdaki gibi açıkça gösterir:
- Paket Adı (Package Name): Paketin adı, örneğin 
Ruby 3.3. - Sürüm (Version): Paketin belirli sürüm numarası.
 - Durum (Status): 
Installed(Kurulu) veyaNot Installed(Kurulu değil) olarak gösterilir. - Kontrol (Control): İşlem düğmeleri.
 
Henüz yüklü olmayan bir Ruby sürümünü kurmak için (örneğin Ruby 3.3):
- Listeden kurmak istediğiniz sürümü bulun.
 - Durumunun 
Not Installedolduğundan emin olun. - Satırın en sağındaki İndir/Yükle (Download/Install) simgesine (genellikle aşağı ok) tıklayın.
 - ServBay seçilen Ruby sürümünü indirmeye ve kurmaya başlayacaktır. Bu işlem birkaç dakika sürebilir.
 - Kurulum tamamlandıktan sonra, o sürümün durumu 
Installedolarak değişir ve kontrol simgesi Kaldır (Uninstall) (çöp kutusu) sembolüne dönüşür. 
Yüklü Ruby Sürümlerini Yönetme 
- Kurulu Sürümleri Görüntüleme: Listede 
Installedolarak işaretlenenler, mevcut ortamınızda yüklü bulunan tüm Ruby sürümlerini gösterir. - Ruby Kaldırma: Artık ihtiyacınız olmayan bir Ruby sürümünü kaldırmak için ilgili Kaldır (Uninstall) simgesine (çöp kutusu) tıklayın ve işlemi onaylayın.
 
Yüklü Ruby ile Çalışma 
ServBay, Ruby’yi yükledikten sonra onu ServBay’in yönettiği ortam değişkenlerine ekler. ServBay ortamını terminalde etkinleştirdiğinizde, doğrudan ruby ve gem komutlarını kullanabilirsiniz.
Sık Kullanılan Komutlar:
Geçerli Ruby Sürümünü Kontrol Etme: Terminali açıp şunu çalıştırın:
bashruby -v1Bu komut, terminal oturumunda varsayılan olarak etkin olan Ruby sürümünü gösterir. Bu sürüm, global ayarlara veya proje bazlı
.servbay.configdosyasına bağlı olabilir.RubyGems Sürümünü Kontrol Etme:
bashgem -v1Gem Paketi Kurulumu: Örneğin, popüler statik site üreticisi Jekyll'ı kurmak için:
bashgem install jekyll1Veya Ruby on Rails framework’ünü kurmak için:
bashgem install rails1Ruby Betiği Çalıştırma:
hello.rbadlı bir dosya oluşturup içine şunları yazın:ruby#!/usr/bin/env ruby puts "Hello from Ruby in ServBay!"1
2Terminalde çalıştırın:
bashruby hello.rb1
Proje Bazlı Sürüm Yönetimi: .servbay.config 
ServBay’in en büyük avantajlarından biri, proje bazlı ortam yapılandırmasını desteklemesidir. Proje klasörünüzün köküne isim olarak .servbay.config olan bir dosya yerleştirerek, ilgili proje için kullanılacak Ruby sürümünü sabitleyebilirsiniz.
Avantajlar:
- Çoklu Dil Yönetimi: Tek dosyada Ruby, PHP, Node.js, Python, Go, Java, .NET gibi birçok dilin sürümünü belirleyebilirsiniz.
 - Tutarlılık Sağlama: Ekip üyeleri veya farklı dağıtım ortamlarında tamamen aynı Ruby sürümüyle çalışmayı garanti eder.
 - Otomatik Geçiş: 
cdkomutuyla.servbay.configiçeren dizine geçtiğinizde, ServBay ortamı otomatik olarak bu dosyadakiRUBY_VERSIONayarını algılayıp uygular. 
Yapılandırma Örneği:
Proje kök dizininizde .servbay.config dosyası oluşturun ve ihtiyaç duyduğunuz Ruby ana sürümünü (örneğin 2.7, 3.3) RUBY_VERSION değişkeni ile belirtin. ServBay, yüklü olan söz konusu ana sürüm ailesindeki en güncel alt sürümü kullanacaktır.
ini
# .servbay.config
# Projede kullanılacak Ruby ana sürümünü belirtin (ör. 3.3)
# ServBay, mevcut 3.3.x serisinin en güncel sürümünü otomatik olarak kullanır
RUBY_VERSION=3.3
# Aynı anda diğer dil sürümleri ve ayarları da belirtebilirsiniz
NODE_VERSION=18
# ... diğer ayarlar ...1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
Bu dizinde terminali açıp ServBay ortamını etkinleştirdikten sonra, ruby -v komutunu çalıştırırsanız .servbay.config dosyasında belirttiğiniz Ruby sürümü (veya o ana sürüm ailesinde yüklü en yüksek sürüm) kullanılır.
Kısa Kullanım Senaryosu 
.servbay.config kullanımını göstermek için basit bir örnek proje oluşturalım:
Proje Dizini Oluşturma:
bashmkdir my-ruby-project cd my-ruby-project1
2.servbay.configDosyası Oluşturma:my-ruby-projectdizininde aşağıdaki içerikle.servbay.configdosyası oluşturun:iniRUBY_VERSION=2.7 # Ruby 2.7.x kurulu olduğunu varsayalım1(ServBay’de Ruby 2.7'nin yüklü olduğundan emin olun)
Ruby Betiği Oluşturma:
app.rbdosyasını oluşturun:ruby#!/usr/bin/env ruby puts "Project is using Ruby version: #{RUBY_VERSION}"1
2Etkinleştir ve Doğrula: (Terminalde ServBay ortamı etkin olmalı.)
my-ruby-projectdizininde çalıştırın:bashruby -v1Çıktıda yüklediğiniz Ruby 2.7.x sürümü görünmelidir.
Betik Çalıştırma:
bashruby app.rb1Çıktı:
Project is using Ruby version: 2.7.x(x, kurulu olan alt sürümü gösterir).Proje Bağımlılıklarını Yükleme (Örnek): Projeniz Bundler ile yönetiliyorsa (çoğunlukla Rails projelerinde), aşağıdakileri çalıştırabilirsiniz:
bash# Eğer bundler yüklü değilse # gem install bundler bundle install1
2
3Bundler, projedeki
Gemfileve mevcut aktif Ruby sürümüne (2.7.x) göre bağımlılıkları yükler.
Artık farklı bir projede Ruby 3.4 gerekiyorsa, o dizindeki .servbay.config dosyasına yalnızca RUBY_VERSION=3.4 yazmanız yeterli; ServBay dizini değiştirdiğinizde Ruby ortamınızı otomatik olarak ayarlayacaktır.
Web Sunucusu Entegrasyonu (Rails, Sinatra vb.) 
Ruby on Rails, Sinatra veya benzeri çerçevelerle geliştirilen web uygulamaları genellikle Puma, Unicorn veya Thin gibi uygulama sunucularında çalışır. Şunları yapabilirsiniz:
- ServBay’de uygulamanız için bir web sitesi (Website) oluşturun.
 - ServBay’in web sunucusunu (Nginx, Caddy, Apache) ters proxy olarak yapılandırarak, belirli bir alan adından gelen istekleri Ruby uygulama sunucunuzun dinlediği porta (örn. 
http://localhost:3000veya Puma/Unicorn’un kullandığı Unix socket) yönlendirin. 
Bu kurulum sayesinde ServBay’in alan adı yönetimi, otomatik HTTPS (ayarlanmışsa) ve merkezi erişim avantajlarından yararlanabilirsiniz.
Özet 
ServBay, macOS’ta Ruby geliştirme deneyimini büyük ölçüde kolaylaştırır. Görsel paket yönetim arayüzü ve güçlü .servbay.config proje bazlı sürüm kontrolü sayesinde, birden fazla Ruby sürümünü ve ilgili Gems’leri rahatlıkla yönetebilirsiniz. Böylece, farklı projeler için bağımsız ve tutarlı ortamlar sağlar, Ruby ile geliştirmenizi daha verimli hale getirirsiniz.
