(J)Ruby İle Website Kodlamak "Ruby On Rails"

Bunjo

Uzman üye
14 Ara 2020
1,587
1,883
HTTParty
Merhaba ben Bunjo, bu konuda Ruby ve JRuby ile "RoR" desteğinden faydalanarak bir websitesi kurmayı anlatacağım.

"
Ruby On Rails" desteğinin ne olduğu hakkında bilgi edinerek konuya giriş yapalım.




Ruby on Rails (Rails olarak da bilinir), Ruby programlama dilinde geliştirilen bir web uygulama çerçevesidir. Bu çerçeve, geliştiricilere hızlı bir şekilde web uygulamaları oluşturmaları için bir dizi araç ve kütüphane sağlar. İşte Ruby on Rails'in bazı temel özellikleri ve avantajları:


MVC Mimarisi (Model-View-Controller): Rails, uygulamalarınızı organize etmek ve yönetmek için MVC mimarisini kullanır. Bu, kodunuzu daha modüler hale getirir ve bakımını kolaylaştırır.




Kod Üretkenliği: Rails, geliştiricilerin daha az kod yazarak daha fazla iş başarmalarını sağlar. "Convention over Configuration" (Yapılandırma Üzerine Konvansiyon) ve "Don't Repeat Yourself" (Kendini Tekrar Etme) prensipleri, geliştiricilerin tekrarlayan kod yazmaktan kaçınmalarına yardımcı olur.

Veritabanı Etkileşimi: Rails, ActiveRecord adlı bir ORM (Object-Relational Mapping) ile birlikte gelir. Bu, veritabanı ile etkileşim kurmayı kolaylaştırır ve geliştiricilere nesne yönelimli bir arabirim sağlar.




Güvenlik: Rails, güvenlikle ilgili bir dizi önlem içerir. Örneğin, Cross-Site Scripting (XSS) ve Cross-Site Request Forgery (CSRF) saldırılarına karşı koruma sağlar.




Modüler Kütüphaneler: Rails, bir dizi modüler kütüphaneden oluşur. Bu kütüphaneler, geliştiricilere önceden yazılmış çözümleri kullanarak işlerini hızlandırmalarına olanak tanır.





Topluluk Desteği: Ruby on Rails, büyük ve aktif bir topluluğa sahiptir. Bu topluluk, belgeler, forumlar, eğitim kaynakları ve açık kaynaklı projelerle desteklenir.



RESTful Tasarımı: Rails, RESTful tasarım prensiplerine uyar ve bu da uygulamaların daha temiz ve tutarlı bir şekilde tasarlanmasına yardımcı olur.




Geliştirici Dostu Araçlar: Rails, geliştiricilere kodlarını test etmek, hata ayıklamak ve uygulamalarını yönetmek için bir dizi araç sağlar. Ayrıca, otomatik olarak kod üretebilen scaffold gibi araçlar da içerir.

Website Yazmaya Başlayalım!

- Bağlılıkları kuralım -

Ruby için:

Rich (BB code):
gem install rails



JRuby için:

Rich (BB code):
jruby -S gem install rails



Rails Uygulamasını Oluşturalım!

Rich (BB code):
rails new bunjotht_app





- Bu dizinde görüldüğü gibi uygulamamız oluştu -

Rails Sunucusunu Başlatalım!


Rich (BB code):
rails server





Sözlük:

MVC (Model-View-Controller), bir yazılım tasarım deseni veya mimaridir ve genellikle kullanıcı arayüzü olan uygulamaların geliştirilmesinde kullanılır. MVC, bir uygulamanın içsel bileşenlerini üç ana bileşen halinde düzenler. Bu bileşenler şunlardır:


Model (Model): Model, uygulamanın veri ve iş mantığıyla ilgili kısmıdır. Veritabanı ile etkileşim kurar, veri manipülasyonunu gerçekleştirir ve uygulama durumunu yönetir. Model, genellikle uygulamanın temel veri yapısını temsil eder ve bu veri yapısının üzerinde işlemler yapılır.

View (Görünüm): View, kullanıcı arayüzünü temsil eder. Kullanıcıya bilgi gösterir ve kullanıcının uygulama ile etkileşimde bulunmasını sağlar. View, genellikle kullanıcı arayüzünün tasarımını ve sunumunu kontrol eder.

Controller (Kontrolör): Controller, kullanıcının uygulama ile etkileşimde bulunduğu arayüzü kontrol eder. Kullanıcının yaptığı istekleri alır, bu isteklere uygun işlemleri belirler ve bu işlemleri Model ve View arasında koordine eder. Controller, uygulama mantığı ve kullanıcı arayüzü arasındaki iletişimi yönetir.


MVC'nin temel prensipleri şunlardır:

  • Ayrım (Separation): MVC, uygulamanın farklı bileşenlerini birbirinden ayırarak her birinin kendi sorumluluk alanına sahip olmasını sağlar. Bu sayede bir bileşende yapılan değişiklikler, diğer bileşenlere minimum etki eder.​
  • Modülerlik (Modularity): Her bir bileşen (Model, View, Controller) kendi başına birimdir ve birbirinden bağımsızdır. Bu, kodun daha kolay anlaşılabilir, bakımı daha kolay ve değiştirilebilir olmasını sağlar.​
  • Esneklik (Flexibility): MVC, uygulamanın farklı katmanlarını birbirinden bağımsız tutarak değişikliklere daha dirençli hale getirir. Örneğin, kullanıcı arayüzünü değiştirmek sadece View katmanını etkiler ve Model veya Controller'ı değiştirmeye gerek duymaz.​
MVC, özellikle web ve masaüstü uygulamaları gibi kullanıcı arayüzü olan uygulamaların geliştirilmesinde yaygın olarak kullanılan bir tasarım desenidir. Bu desen, birçok programlama dilinde ve çerçevede uygulanabilir.

RESTful, "Representational State Transfer" teriminin kısaltmasıdır ve özellikle web servisleri ve API (Application Programming Interface) tasarımında kullanılan bir mimari stilidir. REST, uygulamalar arasında iletişim kurmak için kullanılan bir protokol değil, bir tasarım prensibidir.

RESTful web servisleri, kaynaklar (resources) üzerinde yapılan standart HTTP metodları (GET, POST, PUT, DELETE gibi) kullanarak iletişim kurar. Kaynaklar, genellikle URI (Uniform Resource Identifier) tarafından temsil edilir. Veri, genellikle JSON veya XML formatında temsil edilir.
JRuby : JRuby İmplementasyonu


Hazırlaması zamanımı aldı elimden geldiğince anlatmaya çalıştım dolayısıyla bir beğeniyi çok görmeyiniz.

Bu günlükte benden bu kadar olsun... :)

Daha sonra bu websitesini nasıl değiştireceğimize kadar anlatacağım.​
 
Son düzenleme:

invisible blood

Uzman üye
15 Eyl 2023
1,177
442
Merhaba ben Bunjo, bu konuda Ruby ve JRuby ile "RoR" desteğinden faydalanarak bir websitesi kurmayı anlatacağım.

"
Ruby On Rails" desteğinin ne olduğu hakkında bilgi edinerek konuya giriş yapalım.




Ruby on Rails (Rails olarak da bilinir), Ruby programlama dilinde geliştirilen bir web uygulama çerçevesidir. Bu çerçeve, geliştiricilere hızlı bir şekilde web uygulamaları oluşturmaları için bir dizi araç ve kütüphane sağlar. İşte Ruby on Rails'in bazı temel özellikleri ve avantajları:


MVC Mimarisi (Model-View-Controller): Rails, uygulamalarınızı organize etmek ve yönetmek için MVC mimarisini kullanır. Bu, kodunuzu daha modüler hale getirir ve bakımını kolaylaştırır.




Kod Üretkenliği: Rails, geliştiricilerin daha az kod yazarak daha fazla iş başarmalarını sağlar. "Convention over Configuration" (Yapılandırma Üzerine Konvansiyon) ve "Don't Repeat Yourself" (Kendini Tekrar Etme) prensipleri, geliştiricilerin tekrarlayan kod yazmaktan kaçınmalarına yardımcı olur.

Veritabanı Etkileşimi: Rails, ActiveRecord adlı bir ORM (Object-Relational Mapping) ile birlikte gelir. Bu, veritabanı ile etkileşim kurmayı kolaylaştırır ve geliştiricilere nesne yönelimli bir arabirim sağlar.




Güvenlik: Rails, güvenlikle ilgili bir dizi önlem içerir. Örneğin, Cross-Site Scripting (XSS) ve Cross-Site Request Forgery (CSRF) saldırılarına karşı koruma sağlar.




Modüler Kütüphaneler: Rails, bir dizi modüler kütüphaneden oluşur. Bu kütüphaneler, geliştiricilere önceden yazılmış çözümleri kullanarak işlerini hızlandırmalarına olanak tanır.





Topluluk Desteği: Ruby on Rails, büyük ve aktif bir topluluğa sahiptir. Bu topluluk, belgeler, forumlar, eğitim kaynakları ve açık kaynaklı projelerle desteklenir.



RESTful Tasarımı: Rails, RESTful tasarım prensiplerine uyar ve bu da uygulamaların daha temiz ve tutarlı bir şekilde tasarlanmasına yardımcı olur.




Geliştirici Dostu Araçlar: Rails, geliştiricilere kodlarını test etmek, hata ayıklamak ve uygulamalarını yönetmek için bir dizi araç sağlar. Ayrıca, otomatik olarak kod üretebilen scaffold gibi araçlar da içerir.

Website Yazmaya Başlayalım!

- Bağlılıkları kuralım -

Ruby için:

Rich (BB code):
gem install rails



JRuby için:

Rich (BB code):
jruby -S gem install rails



Rails Uygulamasını Oluşturalım!

Rich (BB code):
rails new bunjotht_app





- Bu dizinde görüldüğü gibi uygulamamız oluştu -

Rails Sunucusunu Başlatalım!


Rich (BB code):
rails server





Sözlük:

MVC (Model-View-Controller), bir yazılım tasarım deseni veya mimaridir ve genellikle kullanıcı arayüzü olan uygulamaların geliştirilmesinde kullanılır. MVC, bir uygulamanın içsel bileşenlerini üç ana bileşen halinde düzenler. Bu bileşenler şunlardır:


Model (Model): Model, uygulamanın veri ve iş mantığıyla ilgili kısmıdır. Veritabanı ile etkileşim kurar, veri manipülasyonunu gerçekleştirir ve uygulama durumunu yönetir. Model, genellikle uygulamanın temel veri yapısını temsil eder ve bu veri yapısının üzerinde işlemler yapılır.

View (Görünüm): View, kullanıcı arayüzünü temsil eder. Kullanıcıya bilgi gösterir ve kullanıcının uygulama ile etkileşimde bulunmasını sağlar. View, genellikle kullanıcı arayüzünün tasarımını ve sunumunu kontrol eder.

Controller (Kontrolör): Controller, kullanıcının uygulama ile etkileşimde bulunduğu arayüzü kontrol eder. Kullanıcının yaptığı istekleri alır, bu isteklere uygun işlemleri belirler ve bu işlemleri Model ve View arasında koordine eder. Controller, uygulama mantığı ve kullanıcı arayüzü arasındaki iletişimi yönetir.


MVC'nin temel prensipleri şunlardır:

  • Ayrım (Separation): MVC, uygulamanın farklı bileşenlerini birbirinden ayırarak her birinin kendi sorumluluk alanına sahip olmasını sağlar. Bu sayede bir bileşende yapılan değişiklikler, diğer bileşenlere minimum etki eder.​
  • Modülerlik (Modularity): Her bir bileşen (Model, View, Controller) kendi başına birimdir ve birbirinden bağımsızdır. Bu, kodun daha kolay anlaşılabilir, bakımı daha kolay ve değiştirilebilir olmasını sağlar.​
  • Esneklik (Flexibility): MVC, uygulamanın farklı katmanlarını birbirinden bağımsız tutarak değişikliklere daha dirençli hale getirir. Örneğin, kullanıcı arayüzünü değiştirmek sadece View katmanını etkiler ve Model veya Controller'ı değiştirmeye gerek duymaz.​
MVC, özellikle web ve masaüstü uygulamaları gibi kullanıcı arayüzü olan uygulamaların geliştirilmesinde yaygın olarak kullanılan bir tasarım desenidir. Bu desen, birçok programlama dilinde ve çerçevede uygulanabilir.

RESTful, "Representational State Transfer" teriminin kısaltmasıdır ve özellikle web servisleri ve API (Application Programming Interface) tasarımında kullanılan bir mimari stilidir. REST, uygulamalar arasında iletişim kurmak için kullanılan bir protokol değil, bir tasarım prensibidir.

RESTful web servisleri, kaynaklar (resources) üzerinde yapılan standart HTTP metodları (GET, POST, PUT, DELETE gibi) kullanarak iletişim kurar. Kaynaklar, genellikle URI (Uniform Resource Identifier) tarafından temsil edilir. Veri, genellikle JSON veya XML formatında temsil edilir.
JRuby : JRuby İmplementasyonu


Hazırlaması zamanımı aldı elimden geldiğince anlatmaya çalıştım dolayısıyla bir beğeniyi çok görmeyiniz.

Bu günlükte benden bu kadar olsun... :)

Daha sonra bu websitesini nasıl değiştireceğimize kadar anlatacağım.​
Ellerinize sağlık bunjo hocam.
 

Ertugrul'

Basın&Medya Ekibi Deneyimli
22 Mar 2023
1,151
899
Photoshop 🔥
Merhaba ben Bunjo, bu konuda Ruby ve JRuby ile "RoR" desteğinden faydalanarak bir websitesi kurmayı anlatacağım.

"
Ruby On Rails" desteğinin ne olduğu hakkında bilgi edinerek konuya giriş yapalım.




Ruby on Rails (Rails olarak da bilinir), Ruby programlama dilinde geliştirilen bir web uygulama çerçevesidir. Bu çerçeve, geliştiricilere hızlı bir şekilde web uygulamaları oluşturmaları için bir dizi araç ve kütüphane sağlar. İşte Ruby on Rails'in bazı temel özellikleri ve avantajları:


MVC Mimarisi (Model-View-Controller): Rails, uygulamalarınızı organize etmek ve yönetmek için MVC mimarisini kullanır. Bu, kodunuzu daha modüler hale getirir ve bakımını kolaylaştırır.




Kod Üretkenliği: Rails, geliştiricilerin daha az kod yazarak daha fazla iş başarmalarını sağlar. "Convention over Configuration" (Yapılandırma Üzerine Konvansiyon) ve "Don't Repeat Yourself" (Kendini Tekrar Etme) prensipleri, geliştiricilerin tekrarlayan kod yazmaktan kaçınmalarına yardımcı olur.

Veritabanı Etkileşimi: Rails, ActiveRecord adlı bir ORM (Object-Relational Mapping) ile birlikte gelir. Bu, veritabanı ile etkileşim kurmayı kolaylaştırır ve geliştiricilere nesne yönelimli bir arabirim sağlar.




Güvenlik: Rails, güvenlikle ilgili bir dizi önlem içerir. Örneğin, Cross-Site Scripting (XSS) ve Cross-Site Request Forgery (CSRF) saldırılarına karşı koruma sağlar.




Modüler Kütüphaneler: Rails, bir dizi modüler kütüphaneden oluşur. Bu kütüphaneler, geliştiricilere önceden yazılmış çözümleri kullanarak işlerini hızlandırmalarına olanak tanır.





Topluluk Desteği: Ruby on Rails, büyük ve aktif bir topluluğa sahiptir. Bu topluluk, belgeler, forumlar, eğitim kaynakları ve açık kaynaklı projelerle desteklenir.



RESTful Tasarımı: Rails, RESTful tasarım prensiplerine uyar ve bu da uygulamaların daha temiz ve tutarlı bir şekilde tasarlanmasına yardımcı olur.




Geliştirici Dostu Araçlar: Rails, geliştiricilere kodlarını test etmek, hata ayıklamak ve uygulamalarını yönetmek için bir dizi araç sağlar. Ayrıca, otomatik olarak kod üretebilen scaffold gibi araçlar da içerir.

Website Yazmaya Başlayalım!

- Bağlılıkları kuralım -

Ruby için:

Rich (BB code):
gem install rails



JRuby için:

Rich (BB code):
jruby -S gem install rails



Rails Uygulamasını Oluşturalım!

Rich (BB code):
rails new bunjotht_app





- Bu dizinde görüldüğü gibi uygulamamız oluştu -

Rails Sunucusunu Başlatalım!


Rich (BB code):
rails server





Sözlük:

MVC (Model-View-Controller), bir yazılım tasarım deseni veya mimaridir ve genellikle kullanıcı arayüzü olan uygulamaların geliştirilmesinde kullanılır. MVC, bir uygulamanın içsel bileşenlerini üç ana bileşen halinde düzenler. Bu bileşenler şunlardır:


Model (Model): Model, uygulamanın veri ve iş mantığıyla ilgili kısmıdır. Veritabanı ile etkileşim kurar, veri manipülasyonunu gerçekleştirir ve uygulama durumunu yönetir. Model, genellikle uygulamanın temel veri yapısını temsil eder ve bu veri yapısının üzerinde işlemler yapılır.

View (Görünüm): View, kullanıcı arayüzünü temsil eder. Kullanıcıya bilgi gösterir ve kullanıcının uygulama ile etkileşimde bulunmasını sağlar. View, genellikle kullanıcı arayüzünün tasarımını ve sunumunu kontrol eder.

Controller (Kontrolör): Controller, kullanıcının uygulama ile etkileşimde bulunduğu arayüzü kontrol eder. Kullanıcının yaptığı istekleri alır, bu isteklere uygun işlemleri belirler ve bu işlemleri Model ve View arasında koordine eder. Controller, uygulama mantığı ve kullanıcı arayüzü arasındaki iletişimi yönetir.


MVC'nin temel prensipleri şunlardır:

  • Ayrım (Separation): MVC, uygulamanın farklı bileşenlerini birbirinden ayırarak her birinin kendi sorumluluk alanına sahip olmasını sağlar. Bu sayede bir bileşende yapılan değişiklikler, diğer bileşenlere minimum etki eder.​
  • Modülerlik (Modularity): Her bir bileşen (Model, View, Controller) kendi başına birimdir ve birbirinden bağımsızdır. Bu, kodun daha kolay anlaşılabilir, bakımı daha kolay ve değiştirilebilir olmasını sağlar.​
  • Esneklik (Flexibility): MVC, uygulamanın farklı katmanlarını birbirinden bağımsız tutarak değişikliklere daha dirençli hale getirir. Örneğin, kullanıcı arayüzünü değiştirmek sadece View katmanını etkiler ve Model veya Controller'ı değiştirmeye gerek duymaz.​
MVC, özellikle web ve masaüstü uygulamaları gibi kullanıcı arayüzü olan uygulamaların geliştirilmesinde yaygın olarak kullanılan bir tasarım desenidir. Bu desen, birçok programlama dilinde ve çerçevede uygulanabilir.

RESTful, "Representational State Transfer" teriminin kısaltmasıdır ve özellikle web servisleri ve API (Application Programming Interface) tasarımında kullanılan bir mimari stilidir. REST, uygulamalar arasında iletişim kurmak için kullanılan bir protokol değil, bir tasarım prensibidir.

RESTful web servisleri, kaynaklar (resources) üzerinde yapılan standart HTTP metodları (GET, POST, PUT, DELETE gibi) kullanarak iletişim kurar. Kaynaklar, genellikle URI (Uniform Resource Identifier) tarafından temsil edilir. Veri, genellikle JSON veya XML formatında temsil edilir.
JRuby : JRuby İmplementasyonu


Hazırlaması zamanımı aldı elimden geldiğince anlatmaya çalıştım dolayısıyla bir beğeniyi çok görmeyiniz.

Bu günlükte benden bu kadar olsun... :)

Daha sonra bu websitesini nasıl değiştireceğimize kadar anlatacağım.​
Konu mükemmel olmuş eline sağlıkk
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.