19 Eylül 2019
TÜBİTAK’ın Üniversite Öğrencileri Araştırma Proje Yarışmaları’nda daha önce İstanbul Bölge birincisi olan Bilgisayar Mühendisliği mezunumuz İbrahim Enes Aydoğdu, diğer bölge birincileriyle büyük final için TEKNOFEST’te yarıştı. Aydoğdu bu kez ikincilik ödülünün sahibi oldu.
TÜBİTAK’ın üniversite öğrencileri için haziranda düzenlediği “2242 Üniversite Öğrencileri Araştırma Proje Yarışmaları”nda “Bilgi ve İletişim Teknolojileri” kategorisinde İstanbul Avrupa-Asya Bölgeleri birinciliği elde eden Aydoğdu’nun projesi finalde yarışan 112 proje arasında yer aldı. Dr. Öğr. Üyesi Ali Nizam ve Arş. Gör. Samet Kaya danışmanlığında hazırladığı “GraphQL için Otomatik Sorgu Altyapısı ve Anlık Sorgu Aracı Geliştirme” isimli bitirme projesiyle yarışmaya katılan Aydoğdu, ikincilik ödülünü Cumhurbaşkanı Yardımcısı Fuat Oktay’dan aldı.
Enes Aydoğdu, “GraphQL için Otomatik Sorgu Altyapısı ve Anlık Sorgu Aracı Geliştirme” isimli bitirme projesini neden geliştirdiğini şöyle anlattı:
“Günümüzde gelişen teknoloji ile birlikte artan cihaz çeşitliliği, internete bağlanan toplam cihaz sayısında büyük artışa neden olmuştur. Artışın sonucu olarak sunucuların daha fazla istek almaya başlaması hem ağ trafiğini hem de sunucu yanıt süresini olumsuz etkilemiştir. Bu sorunları ortadan kaldırmak için Facebook 2015’te GraphQL adlı yeni teknolojisini tanıttı. Geliştirdikleri bu yeni teknoloji istemci kısmında istediğimiz şekilde sorgu hazırlayıp tek istekle birden fazla tablo veya veri tabanına anında erişip istediğimiz veriyi tek cevapla almamızı sağlıyor. Bu sayede cihaz başına düşen istek sayısı azaldığı için sunucuya düşen yük ve ağ trafiği azalıyor. Ancak NoSQL veri tabanları üzerinde GraphQL çalıştırılmak istendiğinde her koleksiyon için ayrı şema ve kod yazılmak zorunda. Bu durum geliştirici için ek iş yükü ve zaman kaybı demektir. Buradaki sıkıntıdan yola çıkarak bir araç geliştirmeye karar verdik. Geliştireceğimiz araç NoSQL veri tabanları üzerinden seçilecek herhangi bir koleksiyon için gerekli olan GraphQL kodlarını otomatik oluşturacaktır. Bu sayede geliştirici sürekli olarak benzer kodları yazmak için uğraşmayacağından gereksiz iş yükü ortadan kalkacak ve zamandan tasarruf sağlanacaktır. Ayrıca bir koleksiyon için GraphQL’in sunucu kısmı hızlı bir şekilde kurulacaktır. Geliştireceğimiz araç büyük veri, veri tabanları üzerinde uygulama geliştiren yazılımcılar ve büyük veri üzerinde sorgu çalıştıran veri analistleri tarafından kullanılabilecektir.”