Sıradaki ilk projemi Delphi for PHP (D4PHP) ile yapmaya karar vermiştim. Daha önce de söz ettiğim bu RAD‘ı geliştiriciler arasında sevenlerin sayısı çok. Hem bu düşünceye özgür iradem ile hak vermek hem de fazla bilgi göz çıkartmaz düşüncesiyle D4PHP’nin 2.1.0 sürümünü kurup kurcalamaya başladım.
İnternetteki eğitim videolarını ve d4php’nin samples klasöründeki örnekleri görünce işlerin nekadar kolaylaştığını anlayabiliyorsunuz fakat grafik ve flash yoğunluklu site tasarımlarında d4php ile nasıl entegre çalışılabilir, kod yapısına nasıl müdahale edilir gibi soru işaretleri de hafiften beyninizde belirmeye başlıyor. Macromedia’nın sunduğu studio ortamı kadar konfor yaşayabilirmiyiz yoksa d4php daha farklı projeler için mi daha uygun olur emin değilim.
Yalnız d4php ile advanced nesneler ve ajax’ı kullanarak yerel uyglama (native application) kıvamında, web tabanlı projeleri rahatlıkla ve kısa sürelerde hazırlayabilirsiniz. Zaten böyle bir proje yapacaksanız kesinlikle d4php kullanmanızı öneririm. Henuz d4php deneyimim az ve şimdilik düşüncelerim böyle.
Gelelim konu başlığına…
Yaşadığım sorun d4php’nin PageControl (advanced groupbox’da yer alıyor) nesnesi ile ilgiliydi. Samples klasöründeki PageControl projesini rahatlıkla browse edebilirken, kendi oluşturduğum projelerde nedense PageControl nesnesi gözükmüyordu. Daha da kötü olan ise bu durum ile ilgili ne php ne de javascript hatası görüntülenmemesiydi. Aslında bu durumu DOM ağacında yer almayan advanced ve additional grubu nesnelerinin çoğunda yaşıyordum. Sezgilerim bana sorunun basit bir include hatasından kaynaklandığını söylüyordu ama aksine ortada include hatası felan yoktu. Sorunu çözdüm sonunda ama biraz sancılı oldu.
Sorunun şartlarını daha belirgin ortaya koyabilmek için birkaç deneme yaptıktan sonra aşağıdaki sonuçlara ulaştım.
- Projenizi Belgelerim klasöründe oluşturulan “Delphi for PHP Projects” klasörüne kaydettiğinizde bahsettiğim sorunu yaşamıyorsunuz.
- Projenizi C: bölümünün kök dizini altında bir klasöre kaydettiğinizde sorun yaşamıyorsunuz.
- Projenizi bir önceki maddedekine benzer olarak D: ye kaydettiğinizde sorun yaşıyorsunuz.
- Projenizi kaydettiğiniz klasörün patikasında (path) Türkçe karakter (ö,ç,ş,ğ,ü) yer alıyorsa sorun yaşıyorsunuz.
- Tools menüsü altında “Deployment Wizard“ı kullanarak gerekli kütüphaneleri proje klasörünüze export ettiğinizde sorun yaşamıyorsunuz.
Sorunu çözerken d4php için çok fazla destek bulamadığımı söylemek istiyorum. İnternetteki forumlarda ve bloglarda da çok fazla kaynak ve yardımcı olacak insan bulamıyorsunuz ama pes etmiyoruz tabiki öğrenmeye ve tırmalamaya devam ediyoruz.