React İle Hangi Backend?

React ile Express JS mi yada PHP mi kullanmalı yım?

React JS arayüz geliştirmek için geliştiriciler için kolayca öğrenilebilen ve hızlı geliştirme yapılabilen bir kütüphane. Güzel arayüzler çıkartmak için gerekli kolaylıkları sağlıyor. Ayrıca geniş bir geliştirici kitlesi olduğu için destek lazım olduğunda yardım alacak çok sayıda kaynak bulunuyor.

Bununla birlikte sadece arayüz geliştirmek için kullanıldığından, eğer backend üzerinde yapılacaklar varsa farklı framework ve programlama dillerine ihtiyaç duyar. Node JS veya Express JS bu seçeneklerden bir tanesidir ve JavaScript tabanlı çalışır. Yine Python, Php, Asp, Go, Java gibi çok sayıda seçenek de hali hazırda React uygulamaları için backend geliştirmek için mevcut.

Peki hangi programlama dilini sunucu olarak seçmek gerekir? Bu bazen kafa karışıklığına neden olan önemli bir sorudur.

React Uygulamaları İçin Hangi Programlama Dili İle Sunucu Yazmak Gerekir

Başlığın uzun olduğunun farkındayım, aslında sorunun cevabı da oldukça uzun verilebilir. Tabii gerek görülürse. Konuya hızlı bir şekilde bir giriş yapmamız gerekirse, düşüncesel düzlemde React ile bağlanacağınız sunucunun hangi dilde olacağı çok da önemli değil. Çünkü genellikle bir API üzerinden sunucuya bağlanacağımız için, sunucu dili arayüz geliştiricisi için çok da önemli olmayabilir.

Çünkü biz APIye istek atarız ve sonucunu bekleriz. Bize gelen sonuç genellikle bir json veya xml dosyası olacaktır. Bu gelen sonucuda ReactJS ile işleyerek aldığımız bilgileri ekrana dökeriz. Bu nedenle React geliştiricilerinin backend uygulamasının programlama dili ile çok da ilgilenmesi gerekmez.

Peki bu her zaman böyle midir? Tabii ki hayır. Neden? Çünkü projenin isterleri ve backendi geliştirecek olan ekibin bilgi ve deneyimi burada önemli rol oynayacaktır. Bir de projede kullanılacak araçlar da önemli olacaktır. Konuyu biraz açalım.

Mesela backend geliştirmesini yapacak olan kişilerin frontend uygulamasını da geliştirdiklerini düşünelim. Bu zaten JavaScript bildikleri ve bu nedenle React ile geliştirme yaptıkları anlamına gelir. Öyleyse NodeJS veya Express JS deneyimlerinin olduğunu da düşünebiliriz. Bu durumda Express JS tercih nedeni olacaktır.

Veya kullanılması gereken veri tabanının MySql olması ve backendin php destekli bir sunucuda çalışacağını varsayarsak, bu durumda php ile geliştirme yapmak gerekecektir.

Yine eğer geliştirilen uygulama yapay zeka ile ilgili ise, backend için tercih edilecek dil Python olabilir. Python programlama dilinin yapay zeka ile olan yakınlığı bu tip uygulamalar için önemli olabilir.

MongoDB kullanacaksanız JavaScript ekosistemine daha yatkın olduğu için JavaScript tabanlı Express JS ile backend geliştirmek tercih edilebilir.

Elimizde Java ile geliştirilmiş bir sunucu varsa ve arayüz React ile yeniden tasarlanırken, sunucu üzerinde ek işlevler yapılacaksa bu durumda, yeni bir backend yazmak yerine Java ile geliştirmeye devam etmek doğru seçenek olabilir.

Bunun gibi farklı durumlar için farklı seçenekler değerlendirilebilir. Tek ve kesin şu programlama dilin kullanmak gerek demek çok da doğru olmayacaktır. Projenizi geliştirirken elinizde olan seçenekleri değerlendirip, projeye en uygun programlama dili ve framework seçimi yapılmalı ve bu şekilde projeye başlanmalıdır.

React Hangi Backend Geliştirme Ortamını Tercih Edelim? Php veya Express JS?

Daha önce belirttiğimiz gibi React ile arayüz uygulaması geliştirdiğinizde backend için kesinlikle belirli bir kütüphane veya programlama dili kullanılmalı denilemez. Bunun yerine projenin isterleri, elimizdeki araçlar ve geliştirici ekibin bilgi ve becerilerine göre uygun olan araçlar ve programlama dili seçilir. Eğer elimizdeki proje JavaScript tabanlı ise ve geliştirici ekibimizin Express JS ile uygulama geliştirme geçmişi varsa bu bir tercih sebebidir. Fakat eğer php kullanmamızı gerektiren bir zorunluluk varsa veya elimizdeki araçlar php ile daha iyi çalışıyorsa php programlama dili tercih sebebi olacaktır.

Sonuç

Gerek backend uygulamaları ve gerekse frontend uygulamaları geliştirirken projenin isterleri, kullanmak zorunda olduğumuz araçlar ve geliştirici ekibinin yetenekleri, seçeceğimiz geliştirme ortamı ve dilini belirleyecektir. Bu konuda tek ve kesin bir seçenek yoktur.

Sizin de konu hakkında ekleyecekleriniz veya soracaklarınız varsa yorumlara yazabilirsiniz.

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir