Progettazione orientata agli oggetti e UML

Documenti analoghi
Ingegneria del Software

Classi. Oggetti e classi. Creazione e inizializzazione di oggetti in C++ Distruzione di oggetti in C++

!"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&) !"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9

Programmazione Orientata agli Oggetti

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009

Lezione 3 Progettazione di siti

Fondamenti VBA. Che cos è VBA

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

Alcune idee sui sistemi software e la loro architettura

SISTEMI OPERATIVI, RETI, INTERNET

Javascript e CSS nelle pagine WEB

Formazione sulla piattaforma Java2EE

DESCRIZIONE CREAZIONE APP Si suddivide in 4 fasi di lavoro: 1. PIANIFICAZIONE; 2. PROGETTAZIONE; 3. SVILUPPO; 4. DISTRIBUZIONE.

Sviluppo e Applicazioni Object Oriented Sviluppo e Applicazioni del Commercio Elettronico UML Analisi Object Oriented Programmazione Java

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15

PROGRAMMAZIONE DIDATTICA ANNUALE DI TECNOLOGIA CLASSE PRIMA

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori

Laboratorio di Progettazione di Sistemi Software Design Patterns

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

Operatore alla riparazione dei veicoli a motore. Standard della Figura nazionale

Aggiorna. La Funzione Aggiorna Listino Aggiornare Listino Pr7 / Le connessioni / Listino METEL. Aggiorna Lis no. Aggiornamento del listino

Modulo 2 Data Base - Modello Relazionale

Oggetti e classi. Cos è un oggetto

Progettazione logica

Object Oriented Programming

DISPENSE DI PROGRAMMAZIONE

EXCEL: FORMATTAZIONE E FORMULE

scheda 1 Percorso 6 Le macchine di Leonardo L energia

(1) (2) (3) (4) 11 nessuno/a (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B

Il paradigma OO e le relative metodologie di progettazione. Programmazione orientata agli oggetti

PVIS: Pilz VISualization

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE TRIENNIO: TERZA DISCIPLINA: INFORMATICA

Considerate lo schema ER in figura: lo schema rappresenta varie proprietà di uomini e donne. Copyright The McGraw-Hill Companies, srl

Le aree dell informatica

Internet (- working). Le basi.

A.S. 2015/16 CLASSE 5 AEE MATERIA: T.P.S.E. UNITA DI APPRENDIMENTO 1: AMPLIFICATORI OPERAZIONALI

SIGEN GESTIONI PROVE GRUPPI ELETTROGENI

Linguaggio C: introduzione

Corso di BIOINFORMATICA Applicazioni BIO-Mediche

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

CAPITOLO V. DATABASE: Il modello relazionale

2. Simulazione discreta: entità ed operazioni

L XML è un linguaggio di markup aperto e basato su testo che fornisce informazioni di tipo strutturale e semantico relative ai dati veri e propri.

Le sue caratteristiche:

APPENDICE 4 AL CAPITOLATO TECNICO

Automazione porte, cancelli, basculanti e finestre Impianti di allarme e sicurezza

Introduzione a MapGuide Author 6.5

I database. Introduzione alla teoria delle basi di dati

Introduciamo l'uso della programmazione ad oggetti in PHP...perchè si può fare!

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

TECNICO SUPERIORE PER I SISTEMI IDRICI

I sistemi operativi (prima parte) Agostino Lorenzi I sistemi operativi - Atlas

Analisi e diagrammi di struttura: esercizi

Corso di Programmazione ad Oggetti

Algoritmi e Linguaggi

Tecnologia GPS / GSM. Introduzione. Tecnologia. Prodotti. Collari GPS. Tracker Hunter. Webtracking. Distributori Italiani. Descrizione del processo

IIS Via Silvestri ITIS Volta Programma svolto di Tecnologie Informatiche A.S. 2015/16 Classe 1 A

Il calcolatore. Architettura di un calcolatore (Hardware)

Scenario-based Design

Normalizzazione. Definizione

V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/

Fondamenti di Informatica

UNITÀ DI APPRENDIMENTO. Comprendente:

ISTITUTO ISTRUZIONE SUPERIORE "L. EINAUDI" - ALBA (CN) ANNO SCOLASTICO 2015/2016

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1

4.11 CONTROLLO DELLE APPARECCHIATURE

Introduzione al Linguaggio C ed all IDE DEV-C++

Architetture di rete. 4. Le applicazioni di rete

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

La rappresentazione dell algoritmo Diagrammi di flusso

Esercizio 1: archivio CD e DVD

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

ISTITUTO COMPRENSIVO DI SCUOLA MATERNA ELEMENTARE E MEDIA DI BISUSCHIO

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli

INSEGNAMENTO DI: FONDAMENTI DI INFORMATICA C - IEI

Automazione Industriale 4- Ingegneria del Software

Definizione di metodi

Grafici e Pagina web

FONDAMENTI DI INFORMATICA II

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Steel&Graphics srl Via Cà Nova Zampieri 4/E San Giovanni Lupatoto VR Tel. 045/ Fax. 045/

Procedura operativa per la gestione della funzione di formazione classi prime

PROGETTO LIM LAVAGNA INTERATTIVA MULTIMEDIALE

Principi di Progettazione del Software a.a " Introduzione al corso! Prof. Luca Mainetti! Università del Salento!

PROGRAMMAZIONE STRUTTURATA

CURRICOLO SCIENZE SCUOLA PRIMARIA

Traguardi di competenza e obiettivi di apprendimento

AGGIORNAMENTO SOFTWARE

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1

ECONORMA S.a.s. Prodotti e Tecnologie per l Ambiente

Files in C++ Fondamenti di Informatica. R. Basili. a.a

Laurea magistrale in Relazioni di lavoro (LM-77 Scienze economico aziendali) Modena, 29 maggio 2014

NUCLEI FONDANTI COMPETENZE CONTENUTI ABILITA METODOLOGIE E STRUMENTI METODO SCIENTIFICO VEDERE

Formattare il testo con gli stili

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011.

Scuola Primaria Salvo D Acquisto Curricolo di Matematica Classe II e III

ACCESS. Database: archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati.

DISCIPLINE CONCORRE NTI CONOSCENZE UDA DISCIPLINA DI RIFERIMENTO UDA

Grafica ed interfacce per la comunicazione. Scienze della Comunicazione A.A.2013/14

Transcript:

Operatore Giuridico d Impresa Informatica Giuridica A.A 2003/2004 II Semestre Progettazione orientata agli oggetti e UML prof. Monica Palmirani Origini storiche Il paradigma orientato agli oggetti è una metodologia di sviluppo di sistemi informatici che abbraccia tutte le fasi di sviluppo del software: OOA - Object Oriented Analisys - analisi OOD - Object Oriented Design - progettazione OOP - Object Oriented Programming - programmazione OOST - Object Oriented Software Testing - collaudo Il paradigma di progettazione orientata ad oggetti nasce negli anni 60 ma solo negli anni 90 trova la sua applicazione: Cox-86, Stroustup-88 Booch-91, Coad e Yourdon-91,

Il perché del successo consente di utilizzare lo stesso paradigma in tutte le fasi di sviluppo del software consente un alto grado di riutilizzo del software migliora la manutenzione del software e minimizza gli errori ad ogni intervento di modifica i sistemi progettati sul paradigma OO sono più adattabili ai cambiamenti nel tempo Struttura del paradigma OO -(I) Il mondo viene modellato partendo dagli oggetti reali gli oggetti reali si aggregano in classi di oggetti uniformi ad ogni classe si possono associare attributi ovvero caratteristiche dell oggetto che descrive ad ogni classe si possono associare dei comportamenti che l oggetto può compiere detti metodi o servizi le classi comunicano scambiandosi messaggi mediante i metodi

Esempio Notazione Classe Oggetto Nome classe attributi metodi Automobile Prezzo Motore Impianto elettrico Impianto idraulico Acquista Rottama Fiat Punto Prezzo Motore Impianto elettrico Impianto idraulico Acquista Rottama Struttura del paradigma OO - (II) Oggetti e classi - le classi sono un astrazione degli oggetti e gli oggetti sono istanze della classe ovvero gli oggetti sono le entità che esistono in un certo tempo e spazio Attributi e metodi - gli attributi e i metodi definiscono i dati e le operazioni della classe Messaggi - sono le operazioni che consentono la comunicazione fra gli oggetti

I principi del paradigma OO Incapsulamento Ereditarietà Polimorfismo Relazione di composizione Incapsulamento la classe e gli oggetti che ne derivano chiudono in se stessi come in un pacchetto i dati e le operazioni nascondendone i dettagli da parte di oggetti esterni Si dice che le classi e gli oggetti incapsulano i loro dettagli sollevando chi li usa dal sapere cosa c è dentro Motore Imp. Idraulico Imp. elettrico Caburatore Pompa Batteria Accensione raffredda Avviamento

Gerarchia ed Ereditarietà Spesso si rende necessario astrarre le classi con un raggruppamento di sovra-classe o metaclasse o superclasse. Nasce la gerarchia delle classi Le classi figlie ereditano dalle classi padre tutti i loro attributi e le loro operazioni Le classi figlie possono aggiungere dettagli rispetto agli attributi e alle operazioni ereditate Le classi figlie possono ereditare attributi ed operazioni da più classi padre - multieredità,, Esempio - ereditarietà Autoveicolo TIR Trazione Carica PULMAN Abitacolo Passeggeri Carica Passeggeri

Esempio - multiereditarietà Automobile Abitacolo Casa mobile Bagno, letti Aggancia Carica Passeggeri Camper Abitacolo Bagno, letti Aggancia Carica Passeggeri Polimorfismo E la proprietà di poter flessibilmente eseguire una operazione di una sottoclasse in base al tipo di oggetto richiamato Esempio: tracciare un grafico comporta a) acquisizione dati b) scelta del tipo di grafico - variabile tipografico c) disegno del grafico scelto

Esempio - polimorfismo dati disegna Grafico Report Testo, disegni, immagini Messaggio[tipografico.disegna, dati] Torta dati disegna Istogrammi dati disegna Se la variabile tipografico è = a istogrammi il messaggio viene indirizzato alla classe istogrammi Se la variabile tipografico è = a torta il messaggio viene indirizzato alla classe torta La relazione di composizione Una proprietà delle classi e la loro scomponibilità in parti in modo da riciclare i loro componenti Le classi quindi possono essere degli aggregati di altre classi più atomiche Esempio: il funzionamento di una automobile si può dividere nelle sue componenti in modo da poter riciclare le definizioni dei componenti anche per alti usi. Motore, ruota, impianto elettrico, impianto idraulico, etc sono componenti della classe AUTOMOBILE. Non ha senso descrivere tutto nella classe AUTOMOBILE risulta più conveniente e più facile da progettare dividere la complessità

Relazione di composizione Automobile Abitacolo, Motore, Imp. Idraulico, Ruota 1 1 4 1 1 1 Motore Imp. Idraulico Ruota Caburatore Pompa Larghezza tipo Accensione raffredda aderisce Javascript Javascript è un linguaggio di scripting che si inserisce direttamente nelle pagine HTML Orientato agli oggetti E un linguaggio interpretato e l interprete è incluso nel browser Lo schema degli oggetti è basato sugli elementi delle finestre e dei documenti DOM Document Object Model

Reprinted from Netscape's JavaScript Guide Notazione Javascript per gli oggetti Nome-Classe.nome-attributo auto.modello Nome-Classe.nome-metodo(par1, par2, par3,,par n ) auto.acquisto(prezzo, num_fattura, codice_cliente) Nome-Oggetto = new Nome-Classe FIAT = new auto FIAT.modello = PUNTO

Esempi Javascript If while oggetto