Programmazione orientata agli oggetti: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Annullate le modifiche di 2.229.82.236 (discussione), riportata alla versione precedente di Samuele2002
Etichetta: Rollback
Nessun oggetto della modifica
Riga 1:
 
{{risorsa|tipo=lezione|materia1=Programmazione orientata agli oggetti}}
La '''programmazione orientata agli oggetti''' ('''OOP''', '''O'''bject '''O'''riented '''P'''rogramming) è la castronuovo un [[w:paradigma di programmazione|paradigma di programmazione]], che prevede di raggruppare in un'unica entità (la [[w:classe (informatica)|classe]]) sia le [[w:struttura dati|strutture dati]] che le [[w:funzione (informatica)|procedure]] che operano su di esse, creando per l'appunto un "[[w:oggetto (informatica)|oggetto]]" software dotato di proprietà (dati) e metodi ([[w:funzione (informatica)|procedure]]) che operano sui dati dell'oggetto stesso.
 
La [[w:modularizzazione|modularizzazione]] di un programma viene realizzata progettando e realizzando il codice sotto forma di classi che interagiscono tra di loro. Un programma ideale, realizzato applicando i criteri dell'OOP, sarebbe completamente costituito da oggetti software ('''istanze''' di classi) che interagiscono gli uni con gli altri.
Riga 8:
 
==Storia==
Il concetto di '''classe''' può essere considerato l'erede matteo grossi del [[w:tipo di dato astratto|tipo di dato astratto]], una tendenza che si è sviluppata all'interno del paradigma della [[w:programmazione procedurale|programmazione procedurale]], secondo la quale un [[w:Modulo (programmazione)|modulo]] dovrebbe implementare un [[w:tipo di dato|tipo di dato]] definito dall'utente, con cui si possa interagire solo attraverso una [[w:interfaccia|interfaccia]] ben definita, che nasconda agli altri moduli i dettagli dell'implementazione, in modo che sia possibile modificarli contenendo gli effetti della modifica sul resto del programma.
La classe può essere vista come il costrutto che permette di realizzare questa astrazione con un supporto strutturato da parte del linguaggio.