Dinamik Web Uygulamaları: IdeaSoft Stajım

Berke Sayın
4 min readMar 13, 2022

--

Teknolojinin gelişmesi ile birlikte alışkanlıklarımız da çok farklı bir noktaya geldi. Artık hayatımızda sanal dünya diye isimlendirdiğimiz bir kavram var. Şu anda günlük hayatımızı devam ettirirken ihtiyaçlarımızı karşılamak üzerine alışveriş yapmak için veya en basitinden yemek siparişi vermek için telefonlarımızda-bilgisayarlarımızda bulunan uygulamaları kullanıyoruz.

Alışkanlıklarımızın bu yöne evrilmesi farklı talepleri de beraberinde getirdi. Her geçen gün online ticaret(e-ticaret) kavramı önemini giderek arttırmaya devam ediyor. Hem yerelde hem globalde onlarca girişimci, proje fikirlerini online platformlara taşıyıp uygulamalarla desteklemeye başladılar. Yine sosyal medyada değerlerini arttırıp yatırım alan girişim haberlerini her gün okuyoruz. Peki nedir bu E-Ticaret, daha doğrusu bir E-Ticaret projesi nasıl oluşturulur?

Herkese merhaba. Geçtiğimiz yaz aylarında zorunlu stajımı IdeaSoft firmasında tamamladım. Okul hayatıma ek olarak iş hayatını gerçek anlamda ilk kez tecrübe etmemin yanı sıra, E-Ticaret ifadesinin önemini kavradım ve bir web uygulamasını dinamik hale getirmek üzere PHP ile back-end işlemleri gerçekleştirme tecrübesi kazandım. Bu sebeple benim için çok keyifli bir süreçti. Bu yazımda online ticaret kavramından bahsedip, PHP ile olan tecrübemi aktarmaya çalışacağım. Keyifli okumalar…

Şimdi ise bir web uygulamasını incelemeden önce, “User Interface Design” ve “User Experience Development” ifadelerine kısaca değinmek istiyorum.

UI (User Interface) Dizayn Nedir?

Öncelikle User Interface Türkçe ifadeyle Kullanıcı Arayüzü anlamına gelir. Bir başka deyişle kullanıcının bir site ya da mobil uygulamada gezinirken o ürünün görsel olarak nasıl tasarlandığıdır. Uygulamadaki her bir sayfanın, butonun, kategorilerin, resimlerin ve bütün elementlerin nasıl sunulduğu birer UI örneğidir.

UX (User Experience) Development Nedir?

Türkçe olarak User Experience, kullanıcı deneyimi anlamına gelir. User Experience Development ise kullanıcının uygulamayla etkileşimi sırasında memnuniyetini arttırarak, mümkün olduğu kadar uygulama içerisinde vakit geçirmesini sağlamak için yapılan geliştirme sürecinin bütünüdür. İyi bir User Experience geliştirme sürecinde, kullanıcıların uygulamada aldıkları hizmet ile daha rahat etkileşime geçebilmeleri hedeflenir.

User Interface ve User Experience kavramları ile ilgili daha geniş kapsamlı bilgi edinmek isterseniz, bu konuyla alakalı ayrıntılı bir şekilde önceden oluşturduğum blog yazıma göz atabilirsiniz.

Yazılımcı Gözüyle Bir Web Uygulaması

Şimdi ise bir web uygulamasını yazılımcı gözüyle ele alalım.

Front End Nedir?

Bir web uygulamasını düşünelim. Burada medium.com’u ele alabiliriz. Bizim kullanıcı olarak bu sitede gezinirken gördüğümüz bütün bileşenler, sayfa tasarımları, bir butona tıkladığımız zaman açılan farklı bir bölüm, bütün client-side işlemler, yani kısacası ön tarafta gördüğümüz her kısmın geliştirilmesi Front End’e aittir. User Interface’in, modern ihtiyaçlar doğrultusunda, kullanıcı deneyimini(User Experience) arttıracak şekilde geliştirilmesinden sorumlu olan kişi Front End Developer’dır.

Back End Nedir?

Bir web uygulamasında Front End tarafından(arayüzden) gelen istekleri karşılayan ve uygulamanın veritabanı işlemlerinin gerçekleştirildiği, kullanıcının görmediği kısımdır. Veritabanına ait her türlü işlem; kullanıcı kayıtları, ürüne ait bilgilerin tutulması gibi operasyonlar Back End’e aittir.

Static Web Sitesi Kavramı

Static web siteleri, içerisinde bulundurduğu bileşenleri(resim, metin, video vs.) herhangi bir veritabanından almayan sitelerdir. Bu web sitelerinde yönetici(admin) kontrol panelleri bulunmaz ve site sadece web programlama bilgisi olan kişiler tarafından güncellenebilir.

Static web siteleri genelde sabit, değişmeyecek bilgiler göstermek için oluşturulan sitelerdir ve günümüzde çok fazla tercih edilmez.

Dinamik Web Sitesi Kavramı

Dinamik web siteleri arka planda web programlama dilleri kullanılarak hazırlanan, içerisinde bulundurduğu bileşenlerin bilgilerini veri tabanında tutan ve oradan alan, yöneticinin(admin) uygulamadaki kısımları hiçbir yazılım bilgisi olmadan güncellemesini sağlayan sistemlerdir. Bu işlemler sadece yöneticinin erişebildiği “Admin Panel” olarak adlandırılan “Content Management System” aracılığıyla gerçekleştirilir.

IdeaSoft Staj Sürecim

IdeaSoft’ta staj yaptığım sürede web projelerini tecrübe ederek bir E-Ticaret uygulamasında nelere ihtiyaç duyulacağını öğrendim. Benim görevim kullanıcı arayüz tasarımından daha çok, web uygulamalarında veritabanı işlemlerinin sağlıklı bir şekilde yönetilmesini sağlayıp projeleri dinamik hale getirmekti.

Bu işlemleri gerçekleştirebilmek için bir çeşit server-side programlama dili olan PHP ve ona ek olarak PDO(PHP Data Object) yapısını kullandım. PDO yapısı PHP uygulamalarının object oriented programming(nesne yönelimli programlama) kavramına uygun geliştirilmesini sağlayan, veritabanları için ortak metot ve özellikleri barındıran bir veritabanı erişim katmanıdır. Geliştirdiğim projede PDO yapısı ile MySQL veritabanı bağlantısını sağlayarak uygulamayı dinamik hale getirdim.

Bu sebeple IdeaSoft stajım gerçek zamanlı E-Ticaret uygulama örneklerini tecrübe etmek açısından benim için çok faydalı oldu.

Her müşterinin farklı ihtiyacı ve bu ihtiyaçlar doğrultusunda farklı talepleri vardır. Hem staj zamanımda hem de sonrasında benim için somut olarak en iyi şekilde öğrendiğim kavram farklı talepler karşısında özgün fikirler ve projeler ortaya koyabilmektir. User Interface her ne kadar önemliyse, User Experience ile ihtiyaçları kolay bir şekilde karşılamak kullanıcıları daha fazla uygulamada tutarak marka değerini arttırır. IdeaSoft E-Ticaret kavramını anlayabilmek adına benim için çok güzel bir başlangıçtı :)

Okul hayatımdan iş hayatına geçiş aşamasının ilk adımı olan stajda kazandığım tecrübe her şeyden önce bana iş disiplini ve problem çözebilme yeteneği kattı. Bu sebeple IdeaSoft ailesine teşekkürlerimi sunuyorum :)

--

--

Responses (1)