Sto leggendo con estremo interesse il libro "Professional PHP 5" della Wrox. In questo volume si fa un abbondante uso dei diagrammi UML per descrivere le relazioni intercorrenti tra classi e componenti in vari progetti PHP.
Personalmente trovo che l'uso di UML sia da incoraggiare ovunque sia possibile, e questo per varie ragioni. La prima è la praticità : è più semplice descrivere visivamente una classe piuttosto che limitarsi ad un abbozzo mentale del suo funzionamento e dei suoi membri, specie quando si ha a che fare con progetti di una certa ampiezza. La seconda è la riusabilità del codice: un modello può essere esportato ed adattato in un altro progetto, ovviamente tenendo conto delle differenze esistenti tra un progetto e l'altro.
Per esempio, una classe ContactFormValidator
che implementa il metodo validate()
di un'interfaccia Validator
può essere riutilizzato in vari contesti. Sarà sincero: credevo che UML si applicasse solo a linguaggi tradizionali come C++ o Java (le mie nostalgiche origini!), invece scopro con piacere la sua effettiva universalità di linguaggio per modelli applicabile a qualsiasi linguaggio orientato agli oggetti. Che dire, a 31 anni scopro di avere una mentalità piuttosto "antica"... Alla prossima!