La programmazione ad oggetti rappresenta una metodologia di sviluppo software che si contrappone alla programmazione procedurale, spesso troppo poco gestibile e confusionaria.
Tramite l'approccio orientato ad oggetti è possibile definire delle classi che rappresentano un tipo di dato gestito dall'applicazione che può essere utilizzato solo tramite particolari interfacce esposte dalla classe stessa verso le altre classi dell'applicazione. All'interno di una classe esistono infatti alcune funzionalità "interne" che non vengono mostrate all'esterno.
Tramite questa tipologia di programmazione si migliora notevolmente il codice limitando le interferenze tra diversi componenti e incapsulando funzionalità specifiche all'interno di una sorta di contenitore che permette una organizzazione più funzionale ed elegante.
Le caratteristiche principali di un linguaggio ad oggetti sono tre:
JavaScript è un linguaggio ad oggetti abbastanza particolare. Presenta infatti molte caratteristiche chiave della programmazione ad oggetti (per esempio il fatto che qualsiasi variabile sia un oggetto) ma non tutte (come per esempio la modifica della visibilità di un metodo).
Inoltre presenta moltissimi aspetti facenti capo alla programmazione procedurale (la possibilità di avere funzioni "sganciate" da classi particolari) e aspetti un po' esotici come il concetto di scope e di closure visti nelle lezioni precedenti).
Personalmente preferisco puntare sempre su una programmazione ad oggetti in quanto la ritengo più chiara, manutenibile ed elegante, rispetto ad una programmazione funzionale.
Le mancanze presenti nel linguaggio non devono spaventare lo sviluppatore orientato agli oggetti in quanto possono comunque essere in qualche modo aggirate con un po' di mestiere e di buona programmazione. L'unica effettiva mancanza che ho riscontrato nel linguaggio è quella delle interfacce, componente abbastanza comodo nella programmazione ad oggetti.
PhantomJS, headless browser per test con JavascriptIl tool ideale per realizzare, da terminale, operazioni in remoto su... |
Creare e leggere QR Code in JavaScriptApplicazioni 'QR Code enabled' per il Web e per il mobile,... |
Jquery UI Map: web-mapping con Google Maps e jQueryUn plugin di jQuery UI per intefacciare applicaizoni Web/mobile con... |
Scrollorama e Scrolldeck, slideshow d'effetto con jQueryPlugin jQuery per ottenere Slideshow con diversi effetti di scrolling |
jCanvas, un primo semplice graficoAlla scoperta della libreria jCanvas, per semplificare il disegno e... |
Guida Node.jsIl framework che permette di per usare V8, l'interprete JavaScript... |
Canvas, guida ai frameworkCanvas, tra gli elementi di HTML5 è forse quello di maggior impatto.... |
Guida jQuery UICreare siti ricchi e dinamici con jQuery UI, il progetto ufficiale... |
Ogni martedì, direttamente nella tua e-mail: guide, articoli, script, novità e approfondimenti tecnici su JavaScript.
Iscriviti alla newsletter
|
|
Corso Webmaster base18 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso JQuery e Ajax per Webmaster03 Luglio 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |
|
|
Corso Webmaster base11 Giugno 2012 a Roma |