İnternet dünyasının temel yapı taşları olan web siteleri, tasarım sürecinden internet kullanıcılarına ulaşana kadar devam eden titiz bir uygulama sürecine sahiptir. Web sitesinin görsel tasarım aşamasından, inşa süreci olarak tanımlanan yazılım aşamasına kadar oldukça özenli bir çalışma yürütülür. Tüm bunlara ek olarak, siteye dahil edilecek içeriklerin girişi ve yayına girmeden önceki güvenlik altyapısı, bu sürecin temel adımları olarak öne çıkar. Back End ve Front End, web dünyasının iki farklı yüzüdür. Web sitesinin oluşturulmasında grafik tasarım ekibi tarafından hazırlanan tasarımın onaylanmasıyla başlayan inşa sürecinde, yazılım ekibine de büyük sorumluluklar düşer. Yazılım dünyasındaki en yaygın kavramlar front-end ve back-end olarak bilinir. Nitekim şirketlerin yazılım geliştirici arayışındaki iş ilanlarına bakıldığında, front-end developer ve back-end developer gibi farklı uzmanlık alanlarının dikkat çektiği görülür. Birbirini tamamlayan ve web sitesinin yazılım altyapısını oluşturan bu iki kavrama daha yakından bakalım… Front End nedir? Uygulamada front-end geliştirme genellikle back-end geliştirmeden önce geldiği için, öncelikle bu kavramı netleştirmekte fayda var. Bir tarayıcıda web sitesi açtığınızda menüler, görseller, renkler ve yazı tipleri gibi birçok öğe görürsünüz. Bu ekranda gördüğünüz tüm tasarım özellikleri bir front-end developer’ın eseridir. Başka bir deyişle, kullanıcıların bir web sitesinde görebildiği ve etkileşime girebildiği, yani tıklayıp gezinebildiği her şey yazılımın front-end aşamasında uygulanır. Bu bağlamda, front-end yazılım geliştiricileri bir web sitesinin inşasında büyük bir görev üstlenirler. Web dünyasında UX olarak adlandırdığımız kullanıcı deneyimini en iyi test eden kişiler onlardır. Front-end geliştiriciler, kullanıcının web sitesi içindeki işini kolaylaştıran ve sitenin genel tasarımından ve işlevsel özelliklerinden memnun kalmasını sağlama sorumluluğunu üstlenen yazılım geliştiricilerdir. Bu aşama, teknik ve görsel tasarım becerilerinin eş zamanlı kullanımını gerektirdiği için uzmanlaşılması gereken önemli bir süreçtir. Aynı zamanda, web sitesinin front-end kısmında aşağıdaki kodlama dilleri, kütüphaneler ve platformlar kullanılır: • HTML, • CSS, • JavaScript, • Backbone, • Bootstrap, • AngularJS Foundation, • EmberJS, • jQuery, • LESS Back End nedir? Back End Developer ne iş yapar? Kullanıcıların davet edildiği ve ilk etkileşime girdiği web sitesinin front-end kısmının tasarımı tamamlandıktan sonra, web sitesinin back-end geliştirme aşaması başlar. Bu aşama, sistem ve yazılım kısmının çalıştığı web sitesinin arka yüzüdür. Ortalama bir web sitesinin back-end aşaması şu unsurları içerir: • Sunucu • Uygulama tabanı ve • Veritabanı Bu bileşenlerin birbiriyle sorunsuz ve uyumlu çalışması için back-end yazılım çalışmaları devreye girer. Sorunsuz ve istikrarlı bir çalışma sağlamak için back-end geliştiriciler, uygulamayı Ruby, PHP, Java ve Python ile hazırlamak için çalışırlar. Bu sürecin sonraki aşamalarında, back-end yazılım geliştiricileri mySQL, Oracle ve SQL server gibi araçların yardımıyla gerekli verileri bulur, bu verileri kaydeder veya değiştirir ve sürecin sonunda sunarak web sitesinin sorunsuz çalışmasını sağlarlar. Günümüzde, ortalama bir back-end geliştiricinin Zend, CakePHP, Symfony gibi platformları kullanabilmesi ve GIT, CVN, CNS gibi sürüm kontrol yazılımlarına aşina olması neredeyse bir zorunluluk olarak kabul edilir. Bu amaçla geliştirilen programlar, web sitesi tasarım sürecinin daha hızlı ilerlemesine ve yazılım ekibinin projelerini daha kolay bir iş birliğiyle tamamlamasına yardımcı olur. Yeni bir web sitesi projesinin ilk sürecinde, back-end geliştirici önce veritabanı şemasını uygular. Ardından, bu süreçte kullanılacak kütüphaneleri seçer ve sistemin arka planını hazırlamaya başlar. Bu şekilde, işin kodlama kısmına geçilerek web sitesinin inşa süreci başlar. İki yazılım geliştirici arasındaki farklardan bahsedecek olursak, bir tiyatro oyunundan örnek verebiliriz. Tiyatro sahnesindeki dekorlardan oyuncuların kıyafetlerine kadar her şey front-end yazılım geliştirme çalışmasının ürünüdür; tiyatro sahnesinin arkasındaki tüm süreç ise back-end kısmının ürünüdür. Front End Geliştirme için gerekli araçlar nelerdir? Daha önce de belirttiğimiz gibi, front-end yazılım kavramı, bir web sitesinde kullanıcı deneyiminin yaşandığı kısımdır. Bu nedenle, front-end geliştirme sürecinde web tasarım süreçlerinde kullanılan bazı profesyonel araçlar vardır. Genel olarak, front-end yazılım geliştiriciler ve tasarımcılar tarafından kullanılan araçlar ve kodlar şunlardan oluşur: • Adobe XD programı, • Adobe Photoshop programı, • Sketch programı, • HTML kod bilgisi, • CSS kod bilgisi, • JavaScript kod bilgisi, • JQuery kod bilgisi. Uzman bir front-end developer, web sitesinin ön yüzünün geliştirilmesinden ve tasarımından sorumludur.
Bu programı ve kodlamayı kullanarak yazı tipleri, açılır menüler, geçişler, kaydırıcılar ve iletişim formları gibi tüm tasarım çalışmalarını yürütür. Web sitesinin front-end kısmındaki bu öğelere eklenen bilgilerin saklanması ve sorunsuz bir şekilde uygulanması için back-end yazılım geliştirme süreci kullanılır. Back End Geliştirme için gerekli araçlar nelerdir? Sunucu, uygulama ve veritabanından oluşan back-end yazılım aşamasında kullanılan bazı programlar ve araçlar vardır. Web sitesinin back-end kısmını oluşturmak ve sorunsuz kullanmak için gereken yazılım dilleri ve veritabanları şunlardır: • PHP yazılım dili, • Ruby programlama dili, • Python programlama dili, • MySql veritabanı, • PostgreSQL veritabanı ve • Oracle veritabanı. Tüm bunlara ek olarak, back-end geliştiricilerin yazılım tasarım sürecini hızlı bir şekilde tamamlayabilmeleri için Zend, Laravel ve Code Igniter gibi geliştirmede kullanılan framework’ler de önemlidir. Back End Geliştirmede nasıl uzman olunur? Gördüğünüz gibi, istikrarlı bir web sitesi ancak web tasarımı ve web geliştirme bir araya geldiğinde oluşturulabilir. Bu nedenle, hem front-end hem de back-end aşamaları farklı görevlerden oluşsa da, web sitesinin sorunsuz bir şekilde tasarlanması ve kullanılması için esasen gereklidirler. Bu iki farklı aşamayı profesyonel düzeyde yönetebilen yazılım geliştiricilere rastlamak nadir olsa da, bu becerilere sahip insanlar mevcuttur. Bu kişiler web dünyasında “full-stack developer” olarak bilinirler. Bu yazılım geliştiriciler, bir web sitesi projesinin hem front-end hem de back-end kısımlarını kendi başlarına tamamlayabilirler. Çevrimiçi platformlar aracılığıyla back-end geliştirici uzmanı olabilirsiniz. Çoğu back-end profesyonelinin popüler kodlama dilleri arasından PHP’yi seçtiği bilinmektedir. Siz de bu kodlama dillerinde gerekli kursları alarak ve kendinizi geliştirerek başarılı bir back-end yazılım geliştiricisi olabilirsiniz. Hedefiniz ne olursa olsun, ne yaptığınızı ve neden yaptığınızı anlayarak back-end geliştirme için kendi yol haritanızı belirleyebilirsiniz. Back End Web Geliştiricileri ortalama ne kadar kazanır? Geleceğinizi etkileyecek bir kariyer kararı verirken, back-end yazılım geliştirici maaşları kesinlikle merak edeceğiniz bir konu olacaktır. Web sitesi geliştiricilerinin üstlendikleri görevler ve kullandıkları araçların yanı sıra, işin finansal boyutuyla ilgili de bir soru işareti vardır. Basitçe ifade etmek gerekirse, back-end geliştirici maaşları ülkeden ülkeye değişmektedir. Ortalama gelirin düşük olduğu ülkelerde, back-end yazılım geliştirici maaşları doğal olarak gelişmiş ülkelerdeki emsallerine göre daha düşük seviyelerde kalacaktır. Ancak ulusal bazda bakıldığında, back-end yazılım geliştiricilerin aylık kazançları ortalamanın oldukça üzerindedir. Önceki içeriğimize https://smartpro.com.tr/bootstrap-nedir-nasil-analiz/ bağlantısından ulaşabilirsiniz. Front End ve Back End ile ilgili tüm detayları öğrenmek, bu iki alandan hangisinin sizin için daha uygun olduğunu belirlemek veya hayatınıza full stack developer olarak devam etmek istiyorsanız, aşağıdaki görsele tıklayabilirsiniz.