Frontend ve Backend Nedir?

Web ve yazılım geliştirme dünyasında en sık karşılaşılan terimlerden ikisi frontend ve backend’tir. Bu terimler genellikle bir uygulamanın ya da web sitesinin “görünen” ve “arka planda çalışan” kısımlarını ifade eder. Bu yazımda, bu iki kavramı basit bir şekilde açıklamaya ve gerçek hayattan örnekler ile desteklemeye çalışacağım.

Frontend (Ön Uç) Nedir?
Frontend, bir web sitesinin ya da uygulamanın kullanıcının gördüğü ve etkileşim kurduğu kısmıdır. Yani telefonumuzdan veya bilgisayarımızdan uygulamayı açtığımızda gözümüzün gördüğü her şey frontend olarak adlandırılır.

Örnekler:

Menü çubuğu
Görseller
Yazılar
Butonlar
Formlar (Kayıt olma, iletişim vb. alanlar)
bu ve benzeri kullanıcının direkt gördüğü her şey frontend tarafından yapılır.

Kullanılan Teknolojiler:

HTML : Sayfanın iskeletini oluşturur. (Metinler, listeler, formlar vb.)
CSS : Tasarım ve görünümü belirler. (Renkler, yazı tipleri, arkaplanlar vb.)
JavaScript: Sayfanın interaktif olmasını sağlar. (Bir butona tıklayınca işlem yapılması gibi.)
Framework’ler: React, Vue.js, Angular gibi modern kütüphaneler daha dinamik arayüzler oluşturmak için kullanılır.
Gerçek hayattan bir örnek:

Bir restorana gittiğinizde garson, masa, menü ve tabaklar bizimle doğrudan etkileşim halindedir. Bu unsurları görür ve kullanırız. Bu unsurlar frontend gibidir.

Backend (Arka Uç) Nedir?
Backend, bir uygulamanın ya da web sitesinin kullanıcının görmediği, arka planda çalışan kısmıdır. Verilerin işlenmesi, saklanması ve yönetilmesinden sorumlu olan alandır.

Örnekler:

Kullanıcının giriş bilgilerini veritabanında kontrol etmek. Ve duruma göre hareket etmek.
Bir blog sitesinde yeni yazı eklendiğinde bunu veritabanına kaydetmek ve istendiği zaman bunu veritabanından getirip kullanıcıya göstermek.
Sipariş sistemlerinde ürün stok kontrolü yapmak.
Kullanıcıya ait bilgileri güvenli şekilde saklamak.
Kullanılan Teknolojiler:

Programlama Dilleri: PHP, Python, Node.js, Java, C# vb.
Framework’ler: Laravel (PHP), Express (Node.js), Django (Python), .Net(C#) gibi.
Veritabanları: MySQL, PostgreSQL, MongoDB, SQLite vb.
Sunucular: Apache, Nginx.
API : Frontend ile veri alışverişi yapmak için kullanılır (RESTful API, GraphQL vb.).
Gerçek hayattan bir örnek:

Yine restoran örneğini düşünürsek, mutfakta yemeğin hazırlanması, siparişin sisteme girilmesi, stok kontrolü gibi işlemler backend kısmını temsil eder.

Frontend ve Backend Nasıl Birlikte Çalışır?
Bir kullanıcı web sitesine giriş yapmak istediğinde:

Frontend : Kullanıcıdan e-posta ve şifresini alır.
Backend : Bu bilgileri veritabanından kontrol eder. Bilgiler doğru ise oturumu başlatır.
Frontend : Kullanıcıya ait sayfayı gösterir.
Her iki taraf birlikte çalışarak uygulamanın düzenli ve güvenli bir şekilde çalışmasını sağlar.

Full Stack Nedir?
Eğer bir yazılımcı hem frontend hem de backend tarafında çalışabiliyorsa, bu kişiye Full Stack Developer denir. Bu tür geliştiriciler genellikle bir projenin her aşamasında aktif rol alabilirler. Hem frontend hem backend alanlarında bilgi sahibidir.
- Aziz Özkaracadağ