A puro scopo illustrativo, ecco a confronto due frammenti di codice PHP, realizzati con le due differenti metodologie, che permettono di ottenere lo stesso risultato (il secondo snippet potrebbe essere scritto in mille modi differenti, ma è creato appositamente per un confronto immediato con il codice procedurale):
Listato 1: codice procedurale
<?php
// stampa un tag p
function tag_p ($text, $ret) {
$txt = "<p> {$text} </p>";
if($ret) return $txt;
echo $txt;
}
// stampa un tag div contenente un tag p
function tag_div_p ($text) {
echo "<div>" . tag_p($text, true) . "</div>";
}
// stampa "<div><p> this is a message </p></div>";
tag_div_p("this is a message");
?>
Listato 2: codice OOP
<?php
class Tags {
public function tag_p ($text, $ret) {
$txt = "<p> {$text} </p>";
if($ret) return $txt;
echo $txt;
}
public function tag_div_p ($text) {
echo "<div>" . $this->tag_p($text, true) . "</div>";
}
// ...
}
$tags = new Tags();
// stampa "<div><p> this is a message </p></div>";
$tags->tag_div_p("this is a message");
?>
Le conclusioni che si possono trarre da questa analisi sono semplici: scrivere correttamente codice OOP è sinonimo di qualità e robustezza dell'applicazione, ma comporta una consapevolezza e conoscenze più profonde e tempi di apprendimento più lunghi rispetto alla controparte procedurale.
Tuttavia, ciò non significa che non è possibile codice di qualità scrivere senza ignorare del tutto il modello ad oggetti: in questo caso è compito dello sviluppatore sfruttare la totale libertà che gli viene posta dal codice procedurale e produrre script robusti e facilmente mantenibili.
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Zend FrameworkDiventate professionisti dello sviluppo Web. Zend Framework è lo... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |