Please enable JavaScript.
Coggle requires JavaScript to display documents.
Object Oriented Programming OOP, - Coggle Diagram
Object Oriented Programming
OOP
REGOLATA DA:
CLASSI
DEFINIZIONE
definire tutte le operazioni applicabili agli oggetti del tipo di dato astratto
garantire che l'utente possa manipolare gli oggetti tramite operazioni del tipo di dato aastratto (TDA) a cui gli oggetti appartengono (protezione)
definire (e nascondere) la rappresentazione dei dati all'utente
VISIBILITÀ
privata (private "-"): nasconde metodi e codice che risulteranno non utilizzabili ed è la clausola di default
protetta (protected): sono visibili solamente nella classe dove sono definiti e anche nei metodi delle classi figlie(pubblic"+"), ma mai in altri punti del programma(private"-")
pubblica (pubbluc"+"): permette l'utilizzo di variabili e metodi dall'esterno
OGGETTI
DEFINIZIONE
entità del problema o della realtà che vengono astratti, vengono memorizzati al suo interno degli specifici ATTRIBUTI e dei comportamenti (METODI) in modo tale da cooperare con altri OGGETTI svolgendo specifiche azioni
OGGETTI SIMILI
rappresentazione di una qualsiasi cosa che ha comortamenti (METODI) uguali ma con caratterstiche specifiche (ATTRIBUTI) che le differenziano
Lo STATO di un oggetto è l'insieme dei valori di un attributo
COMPOSTI DA:
METODI
SETTERS
imposta la cella di memoria della variabile
void nome metodo char nome
GETTERS
legge il valore assegnato alla variabile
char nome metodo
DEFINIZIONE
Gli oggetti hanno specifiche modalità di utilizzo alcuni di uso singolo altri con più modalità di utilizzo che caratterizzano il loro comportamento
ATTRIBUTI
Qualsiasi qualità MISURABILE o ENUMERABILE può costituire un attributo. Alcuni attributi sono ppresenti in tutti gli oggetti altri invece sono caratteristici di una sola CLASSE
GENERALITÀ
modello di programmazione(paradigma) più diffuso e utilizzato a partire dagli anni ottanta del '900
primo vero linguaggio a oggetti "puro" usatto tutt'oggi il primo vero linguaggio è small talk, introdotto negli anni '70 inizialmente da Alan Kay e succesivamente ripreso da Adele Goldberg e Daniel Ingalss, entrambi ricercatori allo Xerox Park di Palo Alto, in California
I linguaggi utilizzati oggi sono Java, Eiffel e C++
CARATTERISTICHE
sono tra le sorgenti d'ispirazione del concetto di componente software
aiutano ad affrontare il problema della sostituzione del software obsoleto (legacy)
legacy (caso in cui una applicazione continua ad essere usata percheè k'utente non ha i mezzi finanziari o non vuole sostituirla con una di migliore prestazione)
utilizzo ed integrazione delle metodologie di sviluppo top-down e bottom-up
aiutano a integrare computazione e interazione
RAPPRESENTAZIONE UML
UML Unified Modeling Language standard OGM Object MAnagement Group standard ISO
Un linguaggio per specificare, visualizzare e realizzare i prodotti di sistemi software
PER GLI OGGETTI
SINTETICA si utilizza un rettangolo con due sezioni dove viene indicato solo il nome dell'oggetto
COMPLETA si utilizza sol un rettangolo con due sezioni con indicati i valori relativi agli attributi che descrivano l'oggetto, con la visibilità ottenuta scrivendo + (pubblic e - (private)
PER LE CLASSI
SINTETICA si utilizza un rettangolo con tre sezioni dove vieni indicato solo il nome della classe
COMPLETA si utilizza un rettangolo con tre sezioni con indicati anche gli attributi e i metodi