Lajiverta Academy Satın Al — 499₺

Academy 🔌 Backend & API Sunucu Nedir?

Web'in görünmeyen yarısı

🔌 Sunucu Nedir? bölümü · Code Quest Backend & API parkuru

Şimdiye kadar öğrendiğin her şey senin bilgisayarında çalışıyordu: Python konsolu, web sayfası, SQL sorgusu. Ama gerçek uygulamalar tek bir bilgisayarda yaşamaz. Instagram'da bir fotoğraf beğendiğinde o beğeni senin telefonunda saklanmaz — dünyanın öbür ucundaki bir makineye gider ve orada kalır. İşte o makinede çalışan programa sunucu (server), yazdığı koda da backend denir.

İkiliyi net ayıralım:

  • İstemci (client) — kullanıcının gördüğü taraf. Tarayıcı, mobil uygulama, oyun. "Frontend" de denir. İster.
  • Sunucu (server) — hiç kimsenin görmediği taraf. Veriyi saklar, kuralları uygular, cevabı üretir. Verir.

Peki neden ikisi ayrı? Çünkü bazı işler istemciye asla emanet edilemez:

  • Gerçeğin tek kaynağı. Oyundaki altının kaç tane olduğuna telefonun karar verirse, herkes kendine sonsuz altın yazar.
  • Paylaşım. Senin yorumunu başkasının görmesi için verinin ortak bir yerde durması gerekir.
  • Güvenlik. Parolalar, ödeme bilgileri, başkalarının verisi... Bunlar istemciye indirilemez.
  • Güç. Ağır hesaplar, arama motorları, yapay zekâ modelleri sunucuda koşar.

Bu dünyada sunucunun dili olarak JavaScript (Node.js) kullanacağız. Web dünyasında öğrendiğin JavaScript'in aynısı — sadece tarayıcıda değil, bir makinede çalışıyor. Yani document ve window yok; onun yerine istekler ve cevaplar var.

Ve en güzeli: bu dünyadaki sunucular gerçekten çalışır. Yazdığın kod bu pencerenin içinde koşar, gönderdiğin istekler gerçek yönlendirme mantığından geçer, aldığın durum kodları gerçektir. Node kurmana da internete de gerek yok.

💡 Kural: istemci ister, sunucu verir. Aralarındaki tek iletişim yolu HTTP mesajlarıdır — sunucu istemcinin ekranını, istemci de sunucunun diskini asla doğrudan göremez.

Kendini test et

İstemci ve sunucu arasındaki temel iş bölümü nedir?

  • İstemci ister, sunucu verir
  • Sunucu ister, istemci verir
  • İkisi de aynı işi yapar, biri yedektir
Cevabı gör

Cevap: İstemci ister, sunucu verir

İstemci (tarayıcı/uygulama) istek gönderir; sunucu isteği karşılayıp cevap üretir. Döngü hep bu yönde başlar.

Aşağıdakilerden hangisi kesinlikle sunucuda yapılmalıdır?

  • Butonun rengini değiştirmek
  • Kullanıcının parolasını kontrol edip oturum açmak
  • Menüyü açıp kapatmak
Cevabı gör

Cevap: Kullanıcının parolasını kontrol edip oturum açmak

Güvenlik kararları istemciye emanet edilmez: istemcideki kodu kullanıcı değiştirebilir. Kimlik doğrulama sunucunun işidir.