Web tasarımında kullanılan frontend ve backend terimlerini açıklamak aslında sanıldığından daha basit!
Konu web tasarımı olduğunda, "frontend" ve "backend" en sık sözü geçen terimler arasında yer alır. Bu iki terim, aslında "web tasarımı" ve "web geliştirme" olarak da adlandırılabilir. Bu iki terim genelde sektörün dışından olanlarda kafa karışıklığı yaratıyor gibi görünse de aslında aralarındaki farkı açıklamak nispeten kolay. Bunu en basit tabirle açıklamak gerekirse; frontend, bir web sitesine girdiğinizde etkileşime girdiğiniz arayüzün tasarım ve geliştirmesine; backend, bu web sitesinin perde arkasında yer alan, işin server kısmı ve taban yazılımını geliştirme işine verilen adlardır. Günümüzün bu en popüler branşlarını daha detaylı açıklamak gerekirse:
![Horato](/files/editor_images/2019/02/frontend ve backend1.png)
Frontend
Yukarıda da belirttiğimiz gibi; frontend, web'in görüp etkileşime girebildiğiniz kısımlarına verilen addır. Frontend genellikle web tasarımı ve web'in ön yüzünün geliştirilmesini kapsar. Web tasarımı dendiğinde; Adobe XD, Photoshop ve Sketch gibi tasarım programlarını kullanabilen, aynı zamanda da HTML, CSS, JavaScript ve JQuery ile kod yazabilen tasarımcılardan bahsedilir. Bir web sitesini kullanırken gördüğünüz her şey; HTML, CSS ve JavaScript'in, kullandığınız web tarayıcı tarafından kontrol edilmesidir. Bunun içinde de fontlar, açılır menüler, geçişler, sliderlar, iletişim formları vb. tasarımsal işler yer alır.
Frontend'de yer alan bu öğelere eklenen bilgilerin depolanabilmesi, yani kısaca frontend'in hayata geçebilmesi için gereken alt yapı ve teknolojiyi sağlayan ise backend'dir.
Backend
Backend genellikle bir sunucu, bir uygulama ve bir veri tabanından oluşur. Bir havayolu veya otobüs firmasının web sitesine girerek bilet aldığınızda frontend ile etkileşime girmiş olursunuz. Siz bilgilerinizi web sitesine girdiğinizde, uygulama bu bilgiyi alır ve bir sunucu üzerinde kurulmuş olan veri tabanına depolar. Backend işleyişini basit bir şekilde anlatabilmek için şöyle örnekleyebiliriz: Siz (uygulama), bir bilgiyi bilgisayarınızda (sunucu) bulunan bir Excel (veri tabanı) dosyasına kaydediyorsunuz.
![Horato](/files/editor_images/2019/02/frontend and backend.png)
Bu teknolojiyi ortaya çıkaran; sunucu, veri tabanı ve uygulamanın birlikte çalışmasını sağlayan kişiye de backend geliştiricisi denir. Web'in backend kısmını oluşturmak için de PHP, Ruby, Python vb. yazılım dilleri ve MySql, PostgreSQL ve Oracle gibi veri tabanları kullanılır. Bunlar, daha kolay kullanılabilmeleri için de Zend, Laravel ve Code Igniter gibi geliştirme sürecini hızlandıran frameworkler ile güçlendirilirler.
Web tasarımı (frontend) ve web geliştirme (backend), ancak bir araya geldiklerinde bir web sitesi oluşabilir, ancak her ikisi de birbirinden farklı işler yapar. Hem frontend hem de backend'i tek başına yapabilen nadir yazılımcılar da "full-stack developer" olarak adlandırılır. Tekrar kısaca özetlemek gerekise de bir web sitesini sıfırdan oluşturabilmek için frontend ve backend'in bir arada olması gerekir; biri olmadan diğeri, tek başına web sitesi oluşturamaz.