Il pattern MVC e Zend Framework – prima parte
La programmazione ad oggetti
di Sergio Vaccaro
La programmazione orientata agli oggetti (OOP) è una tecnica di programmazione fortemente consolidata in molti linguaggi e consiste nel raggruppare in un’unica entità – la classe – un insieme di funzioni e di variabili.
Con gli strumenti dei linguaggi di programmazione OOP, poi, è possibile definire un oggetto come istanza di una data classe ed attribuire a quell’oggetto le caratteristiche ed i comportamenti desiderati.
Immaginiamo che un programma debba avere accesso ad un filesystem remoto. A questo scopo, costruiamo una classe di oggetti che rappresenti la connessione al filesystem e che contenga le funzioni necessarie per realizzare le operazioni fondamentali in quel filesystem: connessione all’host remoto attraverso qualche protocollo, autenticazione, esecuzione di comandi remoti, verifiche, ecc.
Tutta la complessità di queste operazioni viene isolata all’interno della classe.
In più, dotiamo la classe delle funzionalità di interesse globale, cioè le operazioni sul filesystem.
Questi oggetti consentiranno di eseguire operazioni fondamentali – creare un file o una directory, leggere il contenuto di un file, elencare il contenuto di una directory, ecc. – come se fossero operazioni elementari.
La programmazione a oggetti consente di isolare i problemi scomponendo strutture complesse in una somma di strutture relativamente semplici.
Le classi, in quanto strutture di complessità inferiore a quella di un intero progetto, posso essere riutilizzate in altri progetti.
Molte classi, quelle che svolgono task di natura generale, possono essere prelevate da collezioni preesistenti e in alcuni casi scritte da sviluppatori altamente qualificati.
Il prezzo, però, è piuttosto basso, soprattutto se teniamo conto della potenza dell’hardware ormai disponibile anche a basso costo.
Il vantaggio invece è smisurato, in quanto la scrittura del codice diventa incredibilmente più veloce, oltre che flessibile e spesso affidabile.
di Sergio Vaccaro
La programmazione orientata agli oggetti (OOP) è una tecnica di programmazione fortemente consolidata in molti linguaggi e consiste nel raggruppare in un’unica entità – la classe – un insieme di funzioni e di variabili.Con gli strumenti dei linguaggi di programmazione OOP, poi, è possibile definire un oggetto come istanza di una data classe ed attribuire a quell’oggetto le caratteristiche ed i comportamenti desiderati.
Per chiarire meglio, possiamo ricorrere a un
esempio.Immaginiamo che un programma debba avere accesso ad un filesystem remoto. A questo scopo, costruiamo una classe di oggetti che rappresenti la connessione al filesystem e che contenga le funzioni necessarie per realizzare le operazioni fondamentali in quel filesystem: connessione all’host remoto attraverso qualche protocollo, autenticazione, esecuzione di comandi remoti, verifiche, ecc.
Tutta la complessità di queste operazioni viene isolata all’interno della classe.
In più, dotiamo la classe delle funzionalità di interesse globale, cioè le operazioni sul filesystem.
Nel flusso del programma, allora, potranno essere
istanziati (si dice così) oggetti di quella classe.Questi oggetti consentiranno di eseguire operazioni fondamentali – creare un file o una directory, leggere il contenuto di un file, elencare il contenuto di una directory, ecc. – come se fossero operazioni elementari.
Il termine
oggetto è quanto mai felice. Utilizzeremo gli oggetti in programmazione esattamente come gli oggetti della vita reale: un telefono cellulare è uno strumento estremamente complesso e sofisticato, ma possiamo utilizzarlo senza doverci occupare delle caratteristiche del protocollo GSM, delle conversioni analogico/digitale e via dicendo.I linguaggi di programmazione più noti che consentono (e a volte impongono) la programmazione OOP sono
C++, Java, Python, Delphi, .NET, C# e PHP.La programmazione a oggetti consente di isolare i problemi scomponendo strutture complesse in una somma di strutture relativamente semplici.
Le classi, in quanto strutture di complessità inferiore a quella di un intero progetto, posso essere riutilizzate in altri progetti.
Molte classi, quelle che svolgono task di natura generale, possono essere prelevate da collezioni preesistenti e in alcuni casi scritte da sviluppatori altamente qualificati.
Si osservi che dal punto di vista delle prestazioni il risultato della programmazione a oggetti
potrebbe essere più oneroso di quello tradizionale. Una classe potrebbe fare più del necessario, impegnare il compilatore un po’ più di quanto ci occorreva e produrre eseguibili complessivamente più grandi.Il prezzo, però, è piuttosto basso, soprattutto se teniamo conto della potenza dell’hardware ormai disponibile anche a basso costo.
Il vantaggio invece è smisurato, in quanto la scrittura del codice diventa incredibilmente più veloce, oltre che flessibile e spesso affidabile.
Altrimenti scriveremmo tutto in linguaggio macchina!


beh anche il linguaggio macchina ha il suo fascino
3E 41 D3…