Wordpress, PHP, CSS e Javascript tips!

PHP. Stile OOP vs. stile procedurale

di  /  A- A A+
  Attenzione! Questo post non è stato più aggiornato da almeno 90 giorni. Potrebbe contenere dati, notizie e scripts non aggiornati o non in linea con gli attuali standard!

code-944499_960_720Premetto che io adoro scrivere codice php con lo stile procedurale. Non amo in modo particolare la programmazione a oggetti, perché le regole semantiche sono piuttosto rigide e persino ostiche, seppure devo ammettere che gli script sviluppati con lo stile OOP sono di gran lunga più sicuri e certamente più ordinati.

La realtà è che uno sviluppo moderno delle pagine web dinamiche richiede preferibilmente (ma non obbligatoriamente) l’uso della programmazione a oggetti, quand’anche sia duro approcciare con questo stile di programmazione la cui logica e la filosofia sono differenti rispetto al tradizionale stile procedurale. Eppure uno sforzo bisogna pur farlo se si vuole restare al passo con i tempi, anche perché PHP è un linguaggio che ormai è fortemente orientato alla programmazione a oggetti (soprattutto dalla versione 5.x).

Ciò detto, per chi volesse capire esattamente cosa significhi scrivere codice usando la programmazione a oggetti, eccovi un esempio piuttosto banale.

Come dicevo, è un esempio piuttosto elementare che stampa a video “Hello World!” e “Goodbye World…”. Abbiamo creato la classe DemoClass{}, e nel primo caso, per stampare “Hello World!” ho invocato la proprietà $foo dell’oggetto (il cui valore viene assegnato all’atto della creazione dell’oggetto, ma che potrebbe essere assegnato anche successivamente: $myclass->foo = 'Hello World!'; echo $myclass->foo); nel secondo caso, invece, per stampare “Goodbye World…” ho sfruttato il metodo myMethod().

Ecco lo stesso risultato, utilizzando lo stile procedurale:

Come è facile intuire, lo scopo di questi due banalissimi esempi è quello di dimostrare la diversità di approccio della OOP rispetto allo stile procedurale. Indubbiamente, la OOP ha i suoi vantaggi: codice più ordinato (tramite l’uso delle classi), minore possibilità di errori o bug negli script, riutilizzabilità del codice attraverso il sistema dell’ereditarietà, e maggiore sicurezza. Contro: tecnica ostica e regole rigide. Lo stile procedurale, dal suo canto, offre invece maggiore flessibilità ma anche maggiori occasioni di commettere errori e creare un codice tarlato e insicuro.

La scelta dell’uno o dell’altro stile è determinato in parte dalle conoscenze che si hanno della programmazione a oggetti e del livello raggiunto nelle tecniche di programmazione con questo stile (o con lo stile procedurale), e in parte dall’abitudine e dalle preferenze.

© 2016 Il Jester – Note Legali
Archiviato in: PHP  /  Tags: , , ,