merakım var
web yüzü için php en ideal ve yeterli bir dil değil mi ? neden son yıllar da react kullanılmaya başlandı veya php ne moruk öldü denilmeye başlandı ? google instagram tw gibi platformlar da reactı tercih etti bunun sebebi nedir merak ediyorum düşüncelerinizi paylaşırsanız sevinirimm
iki defa yazdım yazdım sildim. php çince gibi bir dil, nüfus çoğunluyla popüler ve gayette yeterli bir dil. teknik sebeplerden önce seçime etken olabilecek nedenlere bir bakalım. bu arada soruyu react değil, nodejs diye yorumladım. çünkü react arkadaşın dediği gibi arayüz geliştirmek için kullanılan bir javascript kütüphanesi.
seçime etken olabilecek sebepler;
- Php yorumlanan bir dil, javascript (nodejs) gibi çalışmaya kullanılacak eklentileri dahil etmek ve derlemek zorun da değilsin, mevcut olan tüm eklentiler sunucu tarafından dahil edilir ve doğrudan erişebilirsin
- Php eski, sunucuda daha eski bir dil ve bu yüzden köklü yazılımların (wordpress, joomla, prestashop vb.) tercih ettiği bir dil. bu tercihin sonucu olarakta çok büyük bir sektör yaratmış durumda, hem kullanıcı için hemde yazılımcı için düşük maliyetli çözümler sunabiliyor php
- Php hosting (sunucunun çok sayıda kullanıcıya hizmet vermesi) seçeneğinin en geniş olduğu back-end dilidir, diğer back-end dillerinde hosting yaygın olmamakla birlikte sunucu kiralanmasına sebep olur bu da maliyeti artırır. örneğin php içerisinde yer alan kabuk komutları çalıştıran yöntem olan exec'in kullanımı bile bir maliyet yükleyebilir, çünkü hostinglerde bu özellik güvenlik sebepleri ile kapalıdır. bu yüzden maliyet açısıyla php'nin kullanımı çok esnek seçenekler sunabiliyor
- Nodejs'in en büyük göze çarpan özelliklerinden biri asekron bir şekilde sunucuda çalışmasıdır, php tüm sayfa içerisinde yer alan komutların çalışması sonlandırılmadan yanıt alamazsınız javascript de durum böyle değildir. tabi php de bu gibi durumlar için çözümler mevcut, örneğin socket.
- nodejs, react sayesinde front-end kodlama yapmanızı sağlarken, aynı zamanda sunucu tarafında da çalışmanızı sağlar.
- nodejs, react native ile ios ve android işletim sisteminde bulunan özelliklerin yazılım tarafından erişilebileceği uygulamalar yazılmasına olanak sağlar. her ne kadar webview ile php bir yazılımı uygulama haline getirebilecek olsanızda, bu uygulama hibrit bir uygulama olurdu. hibrit ile native uygulama arasında ki en büyük fark ise, native sistem özelliklerine erişebilirken hibrit uygulama bunu gerçekleştiremez.
- kısaca nodejs ile hem back-end hemde front-end için kod yazarken, aynı zamanda ios ve andorid için de ugulama geliştirebilirsiniz. bu biraz da java'nın sloganını anımsatıyor, bir kere yaz her yerde kullan.
- tabi tek dil ile bunu yapabiliyor olman, basit bir şeymiş gibi canlanmasın gözünde. nodejs ile sunucu da kod yazıyorsun, react ile arayüz tasarlıyorsun, native ile uygulama yazıyorsun. dil aynı olsada, kullanımları farklı. birde sektörel olarak etken olabilecek sebepler var, bu teknik olarak iki dili kıyaslamaktan daha uzun sürer. açıkcası php'nin kullanılmasına sebep olan durum da tam olarak budur, sektörün en popüler dilidir kim ne derse desin. sadece wordpress eklentisi yazarak milyonlarca dolar kazanan şirketler mevcut. bu şirketler php'yi bıraksa bile, kullanıcı wordpress de devam etmeyi sürdürecektir. kısaca tüketici talebi yazılımcının çalışmasını belirliyorken php çok uzun yıllar vazgeçilmesi mümkün olmayan bir dil.
- php bilen biri, rahatlıkla nodejs öğrenebilir bana göre. çünkü ister istemez bir yazılım geliştirirken mutalaka javascript kullanması gerekiyor. php ile mimari ve nesne yönelimli programlama temellerini zaten öğrenmiş oluyor. az çokta javascript'in syntax'ını öğrenmiş oluyor. ama nodejs bilen birinin, php'ye adapte olmalı daha zor, çünkü syntax'ı çok farklı ve zaten halihazırda sunucu dilini javascript olarak tercih ettiği için php'yi hiç kullanmadığı için uygulaması daha zor olacaktır.