Bölüm 4: İleri Seviye Konular

Sevgili okuyucular,

Web uygulama geliştirirken, projenizin verimliliği ve güvenliği için bir dizi ileri düzey konuya hakim olmanız gerekir. Bu bölümde, veritabanı entegrasyonu, oturum yönetimi ve kimlik doğrulama gibi önemli konuları ele alıyoruz. Adım adım ilerleyerek, bu konuları Kemal ile nasıl yöneteceğinizi öğrenin!

4.1 Veritabanı Entegrasyonu

Bir web uygulamasının kalbi, onun veritabanıdır. Kemal, veritabanıyla entegrasyonu kolaylaştıran çeşitli kütüphaneleri destekler. Örneğin, bir PostgreSQL veritabanıyla entegrasyon için şu adımları takip edebilirsiniz:

# Öncelikle, shard.yml dosyanıza şu satırları ekleyin:
dependencies:
  pg:
    github: will/crystal-pg

# Ardından, ‘shards install’ komutunu çalıştırın ve aşağıdaki kodu app.cr dosyanıza ekleyin:
require "pg"

DB = PG.connect("postgres://USER:PASSWORD@localhost/DATABASE")

get "/kullanicilar" do
  users = DB.exec("SELECT name FROM users")
  users.map(&.to_s).join(", ")
end

Kemal.run

Bu örnekle, PostgreSQL veritabanından kullanıcıların isimlerini çeken bir rota oluşturduk.

4.2 Oturum Yönetimi ve Kimlik Doğrulama

Oturum yönetimi ve kimlik doğrulama, kullanıcıların güvenli bir şekilde uygulamanıza erişmelerini sağlar. İşte bir örnek:

# Öncelikle, shard.yml dosyanıza şu satırları ekleyin:
dependencies:
  kemal-session:
    github: kemalcr/kemal-session
# Daha sonra, ‘shards install’ komutunu çalıştırın ve aşağıdaki kodu app.cr dosyanıza ekleyin:
require "kemal-session"

session = Kemal::Session::CookieStore.new("YOUR_SECRET")

post "/giris" do |env|
  username = env.params.body["username"]? || "Misafir"
  env.session.string("username", username)
  "Merhaba, #{username}"
end

get "/profil" do |env|
  username = env.session.string("username")? || "Misafir"
  "Profil sayfanız: Merhaba, #{username}"
end

Kemal.run

Bu örnekle, kullanıcıların giriş yapabilmeleri için bir rota ve profil bilgilerini görüntüleyebilmeleri için bir diğer rota oluşturduk.

Bu bölümün sonunda artık Kemal ile ileri düzey uygulamalar geliştirebilecek bir temele sahip olacaksınız.

Sonraki bölümde, Kemal’in sunduğu diğer harika özellikleri keşfedeceğiz.

Şimdilik hoşça kalın ve mutlu kodlamalar!

Last updated