La programmazione ad oggetti è la soluzione per la produzione di programmi complessi
• permette riusabilità
• il concetto di oggetto viene introdotto da alan kay negli stati uniti, nei primi anni 70
• alla fine degli anni 80 comincia la diffusione
• OO = è la sigla che si mette davanti al programma per indicare che il programma è fondato sulla programmazione ad oggetti
• OOP = object oriented programming
• oggetti software – attributi
• comportamenti – metodi
• classe = insieme di oggett
• oggetto = caso concreto di classe
• OOD = primo passo, riconoscere tutte le classi per la soluzione del problema stesso
• per astrazione di dati si intende un meccanismo per cui non si definiscono in modo analitico i dati e gli algoritmi come nella programmazione procedurale, ma ci si astrae da essi , costruendo dei modelli ad alto livello.
• La programmazione ad oggetti indica l'insieme delle tecniche, fondate sui concetti di classe e oggetto, che ricoprono tutte le fasi della programmazione , dall'analisi iniziale fino all'utilizzo del software finale da parte degli utenti.
• Creazione delle classi = implementazione di ogni singola classe mediante la scrittura di tutti i sottoalgoritmi dei metodi
• per i programmatori è usuale che i nomi dei metodi siano i verbi
• una classe è un tipo di dato astratto dichiarato dal programmatore mediante attributi e metodi
• gli attributi sono variabili che memorizzano i dati degli oggetti della classe stessa
• i metodi sono procedure o funzioni che realizzano le elaborazioni specifiche del comportamento di una classe
• per indicare gli attributi o i metodi si usa il termine membri o elementi di una classe
• la dichiarazione di una classe contiene la definizione di tutti i membri della classe stessa
• uml – metodo grafico di rappresentazione delle classi
• pdl – linguaggio di progetto
• uml – standard grafico a livello internazionale
• procedura – non restituisce niente
• funzione – restituisce
• i nomi delle classi adottano lo stile pascal (nomi con lettere minuscole, ma iniziano con la maiuscola)
• gli attributi seguono lo stile camel
• i metodi seguono la convenzione pascal
• i membri possono essere chiamati e poi implementati con qualsiasi ordine all'interno del corpo di una classe
• la parte privata è formata da tutti gli attributi e i metodi che possono essere utilizzati esclusivamente all'interno della classe stessa
• parte pubblica – possono essere richiamati sia all'interno della classe sia al suo esterno
• attributo o metodo incapsulato – sinonimo di attributo o metodo privato
• accesso agl attributi – nomeoggetto.nomeattributo
• accesso ai metodi – nomeoggetto.nomemetodo
• un costruttore è il primo metodo pubblico di una classe che viene richiamato una sola volta, dopo la creazione di un oggetto nella memoria
• l'identificatore di un costruttore coincide con il nome della classe
• un costruttore non restituisce mai alcun valore, per cui deve essere una procedura
• il costruttore è richiamato nell'istruzione in cui si crea un nuovo oggetto nella memoria usando l'operatore new.
• Un distruttore è l'ultimo metodo pubblico di una classe che viene richiamato prima di eliminare un oggetto nella memoria
• overloading è il meccanismo per cui due o più sottoalgoritmi possono avere lo stesso identificatore, ma si distinguono perchè hanno un intestazione differente
• un attributo con ambito di classe è una variabile il cui valore è comune tra tutti gli oggetto della stessa classe.
• Un metodo con ambito di classe è una procedura o una funzione, il cui sottoalgoritmo non agisce sugli attributi privati, ma definisce delle elaborazioni comuni a tuttigli oggetti della stessa classe
• accesso attributi con ambito di classe – nomeclasse.nomeattributo
• accesso metodi con ambito di classe – nomeclasse.nomemetodo
• l'ereditarietà è il meccanismo che permette a una classe di possedere degli attributi e dei metodi in comune con un'altra classe. La classe che eredita attrributi e metodi è la classe derivata o sotto classe, mentre la classe da cui si ereditano le cose è la classe di base o superclasse.
• Per dichiarare che una classe eredita i membri di una classe base : CLASS classederivata DERIVED FROM classebase
• ereditarietà singola – quando una classe eredita soltanto da una classe di base
• ereditarietà multipla – se una sottoclasse eredità da più di una clasee di base
• permette riusabilità
• il concetto di oggetto viene introdotto da alan kay negli stati uniti, nei primi anni 70
• alla fine degli anni 80 comincia la diffusione
• OO = è la sigla che si mette davanti al programma per indicare che il programma è fondato sulla programmazione ad oggetti
• OOP = object oriented programming
• oggetti software – attributi
• comportamenti – metodi
• classe = insieme di oggett
• oggetto = caso concreto di classe
• OOD = primo passo, riconoscere tutte le classi per la soluzione del problema stesso
• per astrazione di dati si intende un meccanismo per cui non si definiscono in modo analitico i dati e gli algoritmi come nella programmazione procedurale, ma ci si astrae da essi , costruendo dei modelli ad alto livello.
• La programmazione ad oggetti indica l'insieme delle tecniche, fondate sui concetti di classe e oggetto, che ricoprono tutte le fasi della programmazione , dall'analisi iniziale fino all'utilizzo del software finale da parte degli utenti.
• Creazione delle classi = implementazione di ogni singola classe mediante la scrittura di tutti i sottoalgoritmi dei metodi
• per i programmatori è usuale che i nomi dei metodi siano i verbi
• una classe è un tipo di dato astratto dichiarato dal programmatore mediante attributi e metodi
• gli attributi sono variabili che memorizzano i dati degli oggetti della classe stessa
• i metodi sono procedure o funzioni che realizzano le elaborazioni specifiche del comportamento di una classe
• per indicare gli attributi o i metodi si usa il termine membri o elementi di una classe
• la dichiarazione di una classe contiene la definizione di tutti i membri della classe stessa
• uml – metodo grafico di rappresentazione delle classi
• pdl – linguaggio di progetto
• uml – standard grafico a livello internazionale
• procedura – non restituisce niente
• funzione – restituisce
• i nomi delle classi adottano lo stile pascal (nomi con lettere minuscole, ma iniziano con la maiuscola)
• gli attributi seguono lo stile camel
• i metodi seguono la convenzione pascal
• i membri possono essere chiamati e poi implementati con qualsiasi ordine all'interno del corpo di una classe
• la parte privata è formata da tutti gli attributi e i metodi che possono essere utilizzati esclusivamente all'interno della classe stessa
• parte pubblica – possono essere richiamati sia all'interno della classe sia al suo esterno
• attributo o metodo incapsulato – sinonimo di attributo o metodo privato
• accesso agl attributi – nomeoggetto.nomeattributo
• accesso ai metodi – nomeoggetto.nomemetodo
• un costruttore è il primo metodo pubblico di una classe che viene richiamato una sola volta, dopo la creazione di un oggetto nella memoria
• l'identificatore di un costruttore coincide con il nome della classe
• un costruttore non restituisce mai alcun valore, per cui deve essere una procedura
• il costruttore è richiamato nell'istruzione in cui si crea un nuovo oggetto nella memoria usando l'operatore new.
• Un distruttore è l'ultimo metodo pubblico di una classe che viene richiamato prima di eliminare un oggetto nella memoria
• overloading è il meccanismo per cui due o più sottoalgoritmi possono avere lo stesso identificatore, ma si distinguono perchè hanno un intestazione differente
• un attributo con ambito di classe è una variabile il cui valore è comune tra tutti gli oggetto della stessa classe.
• Un metodo con ambito di classe è una procedura o una funzione, il cui sottoalgoritmo non agisce sugli attributi privati, ma definisce delle elaborazioni comuni a tuttigli oggetti della stessa classe
• accesso attributi con ambito di classe – nomeclasse.nomeattributo
• accesso metodi con ambito di classe – nomeclasse.nomemetodo
• l'ereditarietà è il meccanismo che permette a una classe di possedere degli attributi e dei metodi in comune con un'altra classe. La classe che eredita attrributi e metodi è la classe derivata o sotto classe, mentre la classe da cui si ereditano le cose è la classe di base o superclasse.
• Per dichiarare che una classe eredita i membri di una classe base : CLASS classederivata DERIVED FROM classebase
• ereditarietà singola – quando una classe eredita soltanto da una classe di base
• ereditarietà multipla – se una sottoclasse eredità da più di una clasee di base