Anlatsın
Giriş

Zingat.com'da hangi Yazılım dillerini kullanıyorsunuz?

Doğan Öztürk
Doğan Öztürk
Yazılım Mühendisi, Zingat.com
Transkript
Teknoloji tarafında Zingat'ta aslında birçok çeşitli ve güncel teknoloji kullanıyoruz. Devamlı o konuda kendimizi geliştirme eğilimindeyiz. Ben işin web sitesi tarafındayım. Web sitesinde, Node.js üzerinde çalışan, popüler bir framework olan Express üzerinde kurulu bir uygulamamız var. Bu uygulama bir API ile haberleşiyor ve Zingat API ile entegrasyon sağlıyor. Mobil uygulamalar da aynı API ile iletişim kuruyor.

API, PHP dilinde kodlanmış ve Zend Framework adlı bir framework kullanan, RESTful bir API. Client tarafından Node.js ile entegre edilen nihai client uygulaması ise, tarayıcıda çalışan ve kullanıcı tarafından görülen arayüzle API arasında iletişim sağlayan bir ara katman olarak işlev görüyor. Ön taraftan gelen istekler önce Node.js'e gidiyor; Node.js bu istekleri API'ya yönlendiriyor. Oralarda belirli aşamalardan geçiyor ve belirli katmanlardan geçtikten sonra işleniyor.

Ön planda çeşitli keş katmanları kullanıyoruz. Yoğun bir caching mekanizması uyguluyoruz; burada Netscaler, Redis ve API'nin kendi cache yönetimini kullanıyoruz. Bunun dışında ön planda jQuery kullanıyoruz. JavaScript tarafında DOM manipülasyonları yapmak için temel Bootstrap'ı kullanıyoruz. Front-end framework olarak Bootstrap 3'ü tercih ediyoruz; henüz Bootstrap 4 çıkmadığı için mevcut olan sürümü kullanıyoruz. SAS yazan arkadaşlar bu konuda bize yardımcı olabilirler.

Tabii ki bu teknolojileri geliştirmek için planlarımız var. Paket yöneticisi olarak Node.js üzerinde npm kullanıyoruz. Yakın zamanda yarıdan geçtik. Bunun dışında bağımlılıkları yönetmek için Bower kullanıyoruz. Üçüncü parti paketlerimiz mevcut ve ihtiyaç duyduğumuz paketleri de bu şekilde yöneteceğiz. Şablonları Node.js tarafında üretiyor ve sunuyoruz. Ön planda klasik bir front-end uygulaması olarak işlerimizi yürütüyoruz.

Bunun dışında Single Page Application (SPA) tarafına geçiş yapmak istiyoruz. Yeni teknolojiler kullanmaya çalışıyoruz. Şu anda uygulamalarımızı dağıtmaya çalışıyoruz. Bir yandan konteynerlerle, tüm entegrasyon süreçlerinde ve dağıtım aşamalarında hem testlerle birlikte çok daha hızlı sonuçlar elde etmeyi hedefliyoruz. Sürekli bir çaba içerisindeyiz. Ayrıca Zingat'ta Python projeleri de mevcut. Python ile yazılan projeler var; PHP ile geliştirilen yoğun bir tarafımız da bulunuyor. Veri tabanı (DB) tarafında PostgreSQL kullanıyoruz. Bunun dışında Elasticsearch gibi yoğun bir teknolojik yığınımız mevcut. Daha keşfedilecek çok şey var.
Bu metin otomatik olarak oluşturulmuştur. Hataları bildirerek geliştirilmesine katkı sağlayabilirsiniz.