10 yıla yakın bir süredir Php kodluyorum. İlk öğrendiğim programlama dili değil, ama beni ben yapan PROGRAMLAMA dilidir. İlk zamanlarda nesne yönelimli değildi. Pdo yoktu. Printf mi ?yoksa Echo mu? tartışılıyordu. Hatta “Hello World” yazdırarak. “ms” cinsinden hız hesabı yapanlar bile vardı. Php ölü bir dil, ölecek, Python anasını üzecek diyenlerle doluydu her yer! İlk olarak “Zend” tuttu elinden. Daha sonra “codeigniter” okuyup, üfledi Php’yi. Symfony kan verdi, Laravel ise Kalsiyum-C-D Vitamini verdi. Büyümeye, gelişmeye devam ediyor.
Sıkıntıları yok mu? Var. Peki neler bunlar?
- Çok zengin bir fonksiyon gabarına sahip. Amma velakin tanımlar-isimler belli bir kural-patern-kalıp izlemiyor. Böyle olunca, beynin bedava olduğunu hatırlatıp, hepsini hafızaya attırıyor. Örneğin; strpos(), str_replace(), is_null(), empty(); ne zaman alt çizgi kullanılacak? Ne zaman başa “is” konacak, ne zaman konmayacak bunu ancak deneyimlerimizle bilebiliyoruz.
- Parametrelerin yerleri fonksiyona göre değişebiliyor. str_pos() ve array_search() fonksiyonları buna örnektir. $param1,$param2 iken diğerinde $param2,$param1 olabiliyor.
- Fonksiyonlar yazanın canı nasıl istemişse öyle değer döndürüyor. Bazı fonksiyonlar true-false, bazıları 0-1 bazıları null. Çok çılgın.
- Concurrency(Eş zamanlılık), Multithreading(Çok işlilik) bulunmayışı.(Apache Modları ile çözülebiliyor. FPM Worker, pthreads vb.)
- Yeni eklenen her özelliğin yanında, geriye uyumlu olacak diye, dilin fonksiyon çöplüğüne dönüyor olması. Biri de çıkıp, yeter artık yeni sürümde bu böyle! Böyle kullanacaksınız demiyor.
İyi yanları mı?
to be continued… (Pokemon çizgi filmlerinden esinlenerek. )