PHP  »  Articoli  »  Mondo Php 

Le novità di PHP 5.3: namespace

di: Gabriele Farina     20 Dicembre 2007

Alcuni punti da tenere in considerazione

Che dire: i namespace offrono sicuramente molta utilità ed una bassa complessità che pian piano diventa nulla una volta presa padronanza del costrutto. In generale comunque ci sono alcuni punti da tenere in considerazione quando si lavora con i namespace:

  • La costante __NAMESPACE__ che all'interno del namespace acquisisce direttamente come valore il nome del namespace attuale;
  • L'utilizzo del namespace vuoto rappresentato da una coppia di due punti (::) che serve per accedere al namespace globale. Il namespace è il contenitore in cui finiscono tutte le classi, le funzioni e le costanti che sono definite senza namespace;
  • All'interno di un namespace, se l'interprete non trova un simbolo al quale si cerca di accedere definito nello stesso namespace, andrà a ricercarlo all'interno delle funzionalità builtin. Se necessitiamo di accedere a funzioni globali definite in un'altra posizione, è necessario anteporre al nome del simbolo il namespace globale.
  • La funziona __autoload da PHP 5.3 in avanti riceverà come argomento l'interno qualified name della classe; con qualified name si intende il nome della classe preceduto dal suo namespace, sia questo un namespace definito dall'utente o il namespace globale. Sarà quindi importante prendere in considerazione questo fatto quando si andranno ad aggiungere i namespace al proprio progetto all'uscita di PHP 5.3, ed apportare tutte le modifiche del caso;
  • Le Reflection API sono state estese al fine di includere anche il supporto per i namespace. è stato aggiunto alle classi ReflectionClass e ReflectionFunction il metodo getNamespace che restituisce un'istanza della classe ReflectionNamespace rappresentante lo spazio dei nomi in cui la struttura è stata definita. Tramite questa classe è possibile interrogare il namespace corrente per poter recuperare diverse informazioni attraverso i metodi getName, getClasses, getFunctions, getFiles.

Conclusione

Abbiamo introdotto la prima funzionalità, forse la più interessante ma sicuramente la più attesa, di questa imminente nuova versione di PHP 5. Penso sia inutile dire che probabilmente questa funzionalità varierà parecchio il modo in cui le librerie PHP verranno sviluppate dal 2008 in avanti, e quindi penso sia inutile anche suggerire di acquisire padronanza con questa - semplice - struttura sintattica. I namespace sono una funzionalità molto amata da molti programmatori (soprattutto chi proviene da altre realtà in cui il concetto è alla base del linguaggio dalla notte dei tempi - si veda Java, C#, C++ e molti altri) e soprattutto ancora più amata da chi ai programmatori dice cosa e come fare. Quindi acquisire la tecnica faciliterà sicuramente il passaggio indolore e rapido ad un nuovo approccio che si andrà ad affermare a breve.

Guide PHP

Guida Yii Framework

Come creare applicazioni Web in modo semplice e veloce con il...

Guida Zend Framework

Diventate professionisti dello sviluppo Web. Zend Framework è lo...

Guida Applicazioni Facebook con PHP

Come realizzare un'applicazione per Facebook. Dalle basi della...

Altre guide

Newsletter @PHP

Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso PHP per Webmaster

11 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti