Web Uygulamalarında çokça kullanılan iki terim Back-End ve Front-End nedir?

Web Uygulamalarında çokça kullanılan iki terim Back-End ve Front-End nedir? Back-End ile Front-End arasındaki fark her zaman tam olarak net olmadığı için biraz sinir bozucu olabilir. Genellikle web uygulamalarının özelliklerini tanımlamak için kullanılan temirlerdir. Front-End aynı zamanda istemci tarafı (client-side) olarak adlandırılır ve web tasarımı olarak kabul edilir. Web Uygulamalarının Back-End genellikle sunucu tarafı denir. Bu açıklama basit görünmekle birlikte çoğu zaman net bir şekilde birbiriyle ayrılmadığı için karıştırılır.

Front-End Developer

Tasarım, Html ve CSS gibi bazıdiller dahil olmak üzere kullanıcıların gördüğü arayüzlerdeki (User Interface) herşeydir. Genel olarak Front-End geliştiricileri için Web Tasarımcısı diyebiliriz. Ancak yine de web tasarımcısının ünvanı oldukça geniştir. Bazı firmalarda web tasarımcısının görevi Photoshop vb. programlarla uygulamanın kullanıcı arayüzlerini tasarlarken bazı firmalarda Photoshop vb programda arayüzleri tasarladıktan sonra HTML, CSS ve hatta javascriptlerini yazmaları dahi gerekebilir. Bir arayüz tasarımcısı (User Interface/User Interface Designer UI/UID) temel olarak görsel tasarımcıdır ve genellikle tasarıma odaklanır. Tasarımın uygulanmasına dahil olmaz ancak fikirlerini daha etkin bir şekilde ifade edebilmek için HTML ve CSS i bilirler. Kullanıcı Deneyim Tasarımcıları (User Experience UX / User Experience Designer UXD) Front-End kısmında çalışır ve kişilerin uygulamaları nasıl kullandıklarını ve farklı farklı testler yapar. Bir Front-End tasarımcısı veya geliştiricisi, Back-End tarafı olmayan bir site geliştirebilir. Back-End i olmayan siteler statik sitelerdir. Yeniden tasarlanma zamanı gelmedikçe sayfalar neredeyse her zaman aynı kalır. Bir Front-End geliştiricisinin HTML, CSS ve JavaScript dillerinde iyi bilgi sahibi olmasının yanı sıra testlerini kendi yapabilir. 

Back-End Developer

Back-End veya sunucu tarafı (server side) temelde uygulamanın nasıl çalıştığı güncellendiği ve değiştiğidir. Bu veritabanları ve sunucular gibi kullanıcının tarayıcıda göremediği herşeyi ifade eder. Genellikle Back-End çalışan insanlara programcı veya geliştirici denir. Back-End geliştiricileri çoğunlukla güvenlik, yapıı ve içerik yönetimi gibi konularla ilgilenirler. HTML, css javascript gibi dilleri bilir ve kullanabilirler ancak bu kesinlikle Back-End geliştiricilerinin odak noktası değildir. Dinamik bir site oluşturmak için Back-End geliştiriciler veya en azından Back-End geliştirme gereklidir. Dinamik bir site gerçek zamanlı olarak sürekli değişen ve güncellenen bir sitedir. Çoğu site, statik sitelerin aksine dinamik sitelerdir. Blog siteleri içerikleri sürekli değiştiği ve güncellendiği için dinamik sitelerdir. Dinamik bir sitenin düzgün çalışması için bir veritabanı gerekir. Kullanıcı profilleri veya yükledikleri resimler, blog gönderileri gibi tüm bilgiler veritabanında saklanır. Web geliştiricileri PHP veya .Net gibi programlama dilleriyle çalışır.

Full Stack Developer (Full Stackoverflow Developer)

İşte bizim ülkemizde geçerli olan bir terime denk geldik. Uygulamalarda Back-End ve Front-End arasındaki konuyu anlatmaya çalıştım. Bu kavramlar ile hem Back-End hem Front-End kodlamayı gerçekleştiren geliştiricilere de Full Stack Developer denir. 

Sonuç

Bir uygulamada Front-End ve Back-End geliştiricilerin rahat çalışabilmesi için uygulamanın mimarisi çok önemlidir. Zira iç içe yazılmış kodlarda Back-End ile Front-End geliştiricilerin görevleri de kodları da karışabilir. Bunun için çok katmanlı mimariyle uygun alt yapı oluşturarak Back-End ve Front-End geliştiricilerin görevleri net olarak ortaya koyulabilir. Çok katmanlı mimari ile ilgili yazımıza bu linkten ulaşabilirsiniz. 

İlgili Makaleler

Bu yazıya 0 yorum yapılmış.

Yorum Gönder