Salı, Şub 09, 2010

PHP 5.3 ve NameSpace

merhaba arkadaşlar son stabil sürümü 5.3.1  kasım 2009′da yayınlanmıştı biliyoruz. 5.3 ile beraber  katılaşan şeyler olmaya başladı bu da dilin tutarlılığını arttırıyor bence.  stilinden vazgeçmeyip  yanlış kullanımlar yapan arkadaşlarımız artık kendilerini değiştirmeye mecbular.  bu düzenlemelerle beraber bir de NameSpace   olayı eklenmiş. C# ta da namespace diye geçer Javacılar Package diye  bilir vs.

  1. namespace d3;

artık sınıflarımın sahbi bu (: tüm sınıflarımı d3 namespace altına yazmayı düşünüyorum. bu  aslında OOP nin temeli olan kalıtımdan %100 faydalanabilmemizi sağlayacak ve okunabilirliğini arttıracak. 

namespaceleri farklı olan aynı isimde birden fazla class olabilecek artık. bunu da şu şekilde ayırt ediyoruz

  1. use d3;

bunun altına oluşturmaya çalışacağımız sınıflar için ilk once d3 namespace altına bakılacak.
bununla beraber  yeni global constantlar ve constant çağırma metorları da geldi  artık sınıf içerisinde ya da dosyamızda

  1. __NAMESPACE__

ile sahip uzayın adını çağırabiliyoruz.

  1. __NAMESPACE__\QR_INDEX;
  2. d3\QR_INDEX;

bunlarla da namespace içindeki constantları çağırabiliyoruz.

peki niye boyle bişey yazma gereği duyulmuş ?. şoyle açıklamak istiyorum arkadaşlar    dosya diskimiz için düşünelim.

/home/tufan /d3linq.php   dosyası olabilir  değil mi ? /home/d3lly/d3linq.php  dosyası da olabilir  yani bunlar aynı isimde  ama birbirinden farklı 2 dosya.
işte namespace bize bu kolaylığı veriyor..     d3\linq  dediğimizde benim linqim  zend\linq dediğimiz de de zendin linqini create etmiş olacaz.. şimdilik bu kadar.

Botum v1.0 (:

arkadaşlar bugunlerde sitenizi ziyaret eden Tufyta Bot v1.0 adında bi ajan olabilir bilgi toplamak istediğim bazı alanlar var bunlarla ilgi sadece bana haber getiriyor. bir yerde yayınlama ve ya  birilerine iletme gibi bir işlevi yok. zaten sitenizde yayınladığınız şeylerden haberdar olmam konusunda bir sıkıntı olacağını düşünmüyorum.

- Blog adresi
- Arkadaşları (bunları da ziyaret etmek için)
- Varsa bana link bir de beni linklediği makale ya da linkin bulunduğu metin.
- ilgimi çekebilecek yazılar (c#,wpf,oracle,mssql,php class vs..)

şimdilik  bana bu bilgileri getiriyor ..  kalın sağlıcakla.