Backend (arka uç) nedir ve bir uygulamada ne iş yapar?
Backend, uygulamanın sunucu tarafında iş mantığını, veriyi ve güvenliği yöneten katmandır. Nasıl çalıştığını ve frontend ile farkını örnekle öğrenin.
Backend nedir?
Backend ya da arka uç, bir web sitesinin veya mobil uygulamanın kullanıcı tarafından görülmeyen kısmıdır. Tarayıcıda ya da telefonda görünen arayüz frontend'dir; o arayüzün arkasında çalışan sunucu, veritabanı ve iş kuralları backend'i oluşturur.
Kullanıcı bir düğmeye bastığında frontend isteği backend'e gönderir. Backend isteği doğrular, gerekli hesabı yapar, veritabanını okur veya günceller ve sonucu geri döndürür. Arayüz bu sonucu ekranda gösterir.
Backend'in temel bileşenleri
Bir backend genellikle şu parçalardan oluşur: • Sunucu uygulaması: istekleri alan ve yanıtlayan kod. • API: frontend ve diğer sistemlerin backend ile konuştuğu arayüz, çoğu zaman REST biçiminde. • Veritabanı: kullanıcı, sipariş, ürün gibi verilerin kalıcı olarak saklandığı katman. • Kimlik doğrulama ve yetkilendirme: kimin sisteme girebileceğini ve neye erişebileceğini belirleyen mekanizma. • Arka plan işleri: e-posta gönderimi, rapor üretimi, ödeme kontrolü gibi kullanıcıyı bekletmeyen görevler.
Bu parçalar basit bir uygulamada tek bir projede toplanabilir, büyük sistemlerde ise ayrı servislere bölünür.
Backend nasıl çalışır? Örnek akış
Örneğin bir kullanıcı çevrimiçi mağazada siparişi onaylıyor. Frontend sepet bilgisini backend'e gönderir. Backend önce kullanıcının oturumunu doğrular, sonra stok durumunu veritabanında kontrol eder, tutarı hesaplar ve ödeme sağlayıcısını çağırır.
Ödeme başarılıysa sipariş kaydı oluşturulur, stok düşülür ve onay e-postası arka plan işi olarak kuyruğa alınır. Kullanıcı yalnızca sipariş tamamlandı mesajını görür. Tüm bu kararlar, kuralların tek yerde ve güvenli biçimde uygulanması için backend'de verilir; tarayıcıya güvenilmez.
Frontend ile backend arasındaki fark
Frontend kullanıcının doğrudan etkileşime girdiği arayüzdür; görünüm, düzen ve kullanıcı deneyimiyle ilgilenir. Backend ise verinin doğruluğu, kuralların uygulanması, güvenlik ve performanstan sorumludur.
Frontend ve backend sıkı bağlı çalışır: frontend ne isteyeceğini, backend ne döneceğini bilmelidir. Bu sözleşme API tasarımıyla netleşir. Her ikisini de bilen geliştiricilere genellikle full-stack geliştirici denir.
Backend'de kullanılan dil ve teknolojiler
Backend için tek bir zorunlu dil yoktur. Java ile Spring Boot, JavaScript veya TypeScript ile Node.js ve NestJS, Python, Go, C# ve PHP yaygın tercihlerdir. Seçim ekibin deneyimine, sistemin ölçeğine ve kurumun mevcut altyapısına göre yapılır.
Teknoloji ne olursa olsun ortak konular aynıdır: veritabanı tasarımı, API sözleşmeleri, güvenlik, test edilebilirlik, hata yönetimi ve gözlemlenebilirlik. Bir dilde bu temeller öğrenildiğinde başka dile geçmek görece kolaylaşır.
Mindset programlarında backend
Java ile Spring Boot programı REST API, veri katmanı, güvenlik ve mikroservis temellerini birlikte ele alır; kurumsal Java ekosisteminde çalışan ya da çalışacak geliştiriciler için uygundur. NestJS ileri seviye programı Node.js tarafında modül tasarımı, istek yaşam döngüsü, transaction ve dağıtım konularını işler.
Reaktif Spring Boot programı yüksek eşzamanlılık gerektiren servisleri, BFF deseni programı ise farklı istemciler için backend'in nasıl şekillendirileceğini anlatır. Programlar backend ekiplerinin ve mimarların ortak dil kurmasına yardım eder.
İlgili Mindset programı
Java Spring Boot ile Backend
Sık sorulan sorular
Backend geliştirici ne yapar?
Backend geliştirici sunucu tarafı kodunu yazar, veritabanı şemasını tasarlar, API uç noktalarını hazırlar ve güvenlik, performans ve hata durumlarını yönetir. Frontend ekibiyle API sözleşmesi üzerinde anlaşır, çoğu zaman test, dağıtım ve izleme süreçlerine de katılır.
Backend öğrenmek için hangi dille başlanmalı?
Sıfırdan başlayanlar için yaygın, öğrenme kaynağı bol ve okunaklı bir dil iyi bir başlangıçtır. Önemli olan dilin kendisinden çok HTTP, veritabanı ve API mantığını kavramaktır. Çalıştığınız kurumun yığınını bilmek de iş ilanlarına uyum açısından pratik bir ölçüttür.
API ile backend aynı şey midir?
Hayır. API, backend'in dış dünyaya açtığı arayüzdür; hangi isteklere nasıl yanıt verileceğini tanımlar. Backend ise bu arayüzün arkasındaki kodun, veritabanının ve iş kurallarının tamamıdır. API backend'in vitrinidir, backend ise asıl işi yapan katmandır.
Backend hataları kullanıcıya nasıl yansır?
Backend yavaşlar ya da hata verirse kullanıcı boş sayfa, uzun bekleme ya da başarısız işlem görür; veri yanlış hesaplanırsa sipariş, fatura veya bakiye hatalı çıkabilir. Bu nedenle backend'de doğrulama, hata yönetimi ve izleme, görünmez olsa da kritik önemdedir.
İlgili rehberler
İlgili eğitimler
Kategori: Yazılım Geliştirme