# data[].attributes.body
La programmazione orientata agli oggetti (Object Oriented Programming, da cui l’acronimo OOP) è uno stile fondamentale di programmazione (o paradigma) che si basa principalmente sul raggruppamento all’interno di un’unica entità (la classe) delle strutture dati e delle procedure che operano su di esse.

Istanziando la classe, che rappresenta fondamentalmente una struttura astratta, è possibile creare “oggetti” concreti (le cosiddette istanze) dotati di proprietà (dati/variabili) e metodi(procedure/funzioni) che operano sui dati dell’oggetto stesso.

# data[].attributes.body
Un oggetto è una istanza di una classe (a volte di più di una). Un oggetto occupa memoria, la sua classe definisce come sono organizzati i dati in questa memoria. Ogni oggetto possiede tutti gli attributi definiti nella classe, ed essi hanno un valore, che può mutare durante l’esecuzione del programma come quello di qualsiasi variabile. Se il paradigma della OOP è applicato in modo rigido, gli attributi di un oggetto vengono manipolati solo da metodi invocati su quello stesso oggetto.

# data[].attributes.body
La nozione di astrazione è un principio potente nell' informatica e non solo. La sua idea principale è di distillare un sistema complicato nei suoi costituenti più fondamentali e descrivere questi costituenti in modo semplice ma preciso. La descrizione dei costituenti di un sistema richiede di assegnar loro un nome e una specificazione del loro funzionamento. Questa specificazione deve essere precisa, ma allo stesso tempo abbastanza concisa, eliminando tutti i dettagli non necessari alla sua comprensione. L' applicazione di questo principio alla progettazione di strutture dati dà luogo ai tipi di dati astratti.

# data[].attributes.attachment_link.title
Programmazione in C++ ~ Lezione 8: Classi e oggetti

# data[].attributes.attachment_link.description
Le classi sono quindi comandi per possedere dati, gli oggetti sono all'interno delle classi, ne fanno parte. Possono essere: public private protected (alla fine mi ricordavo più o meno :P) METTETE LIKE AL VIDEO E ISCRIVETEVI ------------------------------------------------------------------ Iscriviti sul mio bot di Telegram: @ProgrammazioneTime_bot Unisciti al mio canale Telegram: telegram.me/programmazionetime

# data[].attributes.body
Le classi sono uno strumento per costruire strutture dati che contengano non solo dei dati ma anche il codice per gestirli. Come tutti i costrutti che permettono di definire le strutture dati, una classe definisce un nuovo tipo di dato. I membri di una classe sono dati chiamati attributi, e metodi (ovvero procedure) che operano su tali attributi.

Dal punto di vista matematico, una classe definisce un insieme in modo intensivo, ovvero definendone le caratteristiche invece che elencandone gli elementi. Una classe può dichiarare riservati una parte dei suoi attributi e/o dei suoi metodi, e riservarne l’uso a se stesso e/o a particolari tipi di oggetti a lui correlati.