La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Laboratorio di Ingegneria del Software Laboratorio di Ingegneria del Software Primo Incontro Titolare Prof. Pierluigi Sanpietro.

Presentazioni simili


Presentazione sul tema: "Laboratorio di Ingegneria del Software Laboratorio di Ingegneria del Software Primo Incontro Titolare Prof. Pierluigi Sanpietro."— Transcript della presentazione:

1 Laboratorio di Ingegneria del Software Laboratorio di Ingegneria del Software Primo Incontro Titolare Prof. Pierluigi Sanpietro

2 Laboratorio di Ingegneria del Software 2 Staff  Titolare del corso: prof. Pierluigi San Pietro  Responsabili di laboratorio: ing. Pierluigi Taddei (taddei@elet.polimi.it) ing. Alessandro Giusti (alessandro.giusti@polimi.it) ing. Davide Barbieri (dbarbieri@elet.polimi.it)

3 Laboratorio di Ingegneria del Software 3 Descrizione del laboratorio  Le prime due lezioni sono dedicate a prendere confidenza con la programmazione ad oggetti e l’ambiente di sviluppo tramite la risoluzione di semplici esercizi Il responsabile e i tutors sono a disposizione per domande e problemi Si suggerisce di finire gli esercizi e le estensioni a casa. All’inizio del laboratorio successivo potete chiedere chiarimenti.  Le successive sei lezioni sono dedicate allo sviluppo del progetto di laboratorio Si suggerisce di iniziare questo blocco di lezioni con una buona conoscenza di Java per concentrarsi sugli aspetti più importanti del progetto

4 Laboratorio di Ingegneria del Software 4 Frequently asked questions  E’ possibile collaborare con il vicino di banco? Si, la collaborazione è necessaria!  Cosa succede se si perdono delle lezioni di laboratorio? Tecnicamente nulla, la presenza viene considerata per possibili arrotondamenti finali  Quando avverrà la valutazione? L’ultima lezione del laboratorio (15 giugno 2007) sarà interamente dedicata alla valutazione del progetto.  E se quel giorno non posso esserci? Se avete la possibilità fatevi valutare alla lezione precedente, altrimenti consegnate il codice entro il 15 giugno 2007 e verrete valutati su appuntamento in uno dei giorni immediatamente successivi

5 Laboratorio di Ingegneria del Software 5 Frequently asked questions  Il progetto può essere fatto in gruppo? Il progetto DEVE essere fatto in gruppo, al terzo incontro dovrete comunicare i vostri nomi.  Si può lavorare al progetto in tre? No, sono ammessi gruppi da due o al minimo una persona!  Il mio compagno è fuggito per le isole Fiji, posso unirmi ad un altro gruppo? Sono ammessi cambiamenti solo fino al quarto incontro. Da quel momento in poi i gruppi non sono più modificabili  Il venerdì pomeriggio faccio Karate, posso cambiare squadra e seguire il venerdì mattina? Qualunque cambiamento di squadra è ammesso solo se trovate qualcuno dell’altra squadra disposto a seguire il pomeriggio.

6 Laboratorio di Ingegneria del Software 6 La Classe Rettangolo  Costruisce un oggetto che rappresenta un Rettangolo, la cui base e altezza hanno le lunghezze fornite tramite il primo e il secondo parametro del costruttore  La Classe dispone di seguenti metodi: ügetArea restituisce l'area del Rettangolo rappresentato dall'oggetto che esegue il metodo ügetPerimetro restituisce il perimetro del Rettangolo rappresentato dall'oggetto che esegue il metodo üequals confronta il Rettangolo rappresentato dall'oggetto che esegue il metodo, con il rettangolo di cui viene fornito il riferimento tramite il parametro, restituendo true se sono uguali

7 Laboratorio di Ingegneria del Software 7 La Classe Rettangolo haAreaMaggiore restituisce true se l'area del Rettangolo rappresentato dall'oggetto che esegue il metodo è maggiore di quello del rettangolo di cui viene fornito il riferimento tramite il parametro haPerimetroMaggiore restituisce true se il perimetro del Rettangolo rappresentato dall'oggetto che esegue il metodo è maggiore di quello del rettangolo di cui viene fornito il riferimento tramite il parametro toString restituisce una stringa di caratteri che descrive il Rettangolo rappresentato dall'oggetto, come ad esempio "base = 5.1, altezza = 4.3" getBase restituisce la base del Rettangolo rappresentato dall'oggetto getAltezza restituisce l'altezza del Rettangolo rappresentato dall'oggetto

8 Laboratorio di Ingegneria del Software 8 Uso della Classe Rettangolo  Scrivere un'applicazione per determinare il rettangolo con area maggiore in una sequenza di rettangoli fornite da tastiera.  Il metodo main dell'applicazione si basa su due fasi: üLettura dei Dati üComunicazione del risultato

9 Laboratorio di Ingegneria del Software 9 La Classe Quadrato  Costruisce un oggetto che rappresenta un Quadrato, la cui lato ha la lunghezza fornito tramite il parametro del costruttore  La Classe dispone di seguenti metodi: ügetArea restituisce l'area del Quadrato rappresentato dall'oggetto che esegue il metodo ügetPerimetro restituisce il perimetro del Quadrato rappresentato dall'oggetto che esegue il metodo üequals confronta il Quadrato rappresentato dall'oggetto che esegue il metodo, con il Quadrato di cui viene fornito il riferimento tramite il parametro, restituendo true se sono uguali

10 Laboratorio di Ingegneria del Software 10 La Classe Quadrato haAreaMaggiore restituisce true se l'area del Quadrato rappresentato dall'oggetto che esegue il metodo è maggiore di quello del Quadrato di cui viene fornito il riferimento tramite il parametro haPerimetroMaggiore restituisce true se il perimetro del Quadrato rappresentato dall'oggetto che esegue il metodo è maggiore di quello del Quadrato di cui viene fornito il riferimento tramite il parametro toString restituisce una stringa di caratteri che descrive il Quadrato rappresentato dall'oggetto, come ad esempio “lato = 5.1" getLato restituisce la lato del Quadrato rappresentato dall'oggetto

11 Laboratorio di Ingegneria del Software 11 Uso della Classe Quadrato  Scrivere un'applicazione per determinare il Quadrato con area maggiore in una sequenza di Quadrati fornite da tastiera.  Il metodo main dell'applicazione si basa su due fasi: üLettura dei Dati üComunicazione del risultato

12 Laboratorio di Ingegneria del Software 12 La Classe Cerchio  Costruisce un oggetto che rappresenta un Cerchio, la cui raggio ha la lunghezza fornito tramite il parametro del costruttore  La Classe dispone di seguenti metodi: ügetArea restituisce l'area del Cerchio rappresentato dall'oggetto che esegue il metodo ügetCirconfrenza ügetPerimetro restituisce la circonferenza del Cerchio rappresentato dall'oggetto che esegue il metodo üequals confronta il Cerchio rappresentato dall'oggetto che esegue il metodo, con il Cerchio di cui viene fornito il riferimento tramite il parametro, restituendo true se sono uguali

13 Laboratorio di Ingegneria del Software 13 La Classe Cerchio haAreaMaggiore restituisce true se l'area del Cerchio rappresentato dall'oggetto che esegue il metodo è maggiore di quello del Cerchio di cui viene fornito il riferimento tramite il parametro haPerimetroMaggiore restituisce true se il perimetro del Cerchio rappresentato dall'oggetto che esegue il metodo è maggiore di quello del Cerchio di cui viene fornito il riferimento tramite il parametro toString restituisce una stringa di caratteri che descrive il Quadrato rappresentato dall'oggetto, come ad esempio “raggio = 5.1" getRaggio restituisce il raggio del Cerchio rappresentato dall'oggetto

14 Laboratorio di Ingegneria del Software 14 Figura con Area maggiore üÉ molto piu’ intressante sviluppare applicazioni in grado di trattare sia rettangoli, quadrati e cerchi. üIn grado di ricevere i dati relativi a una sequenza contenente rettangoli, quadrati cerchi e determinare quale tra essi abbia area maggiore.

15 Laboratorio di Ingegneria del Software 15 Uso della Classe Cerchio  Scrivere un'applicazione per determinare il Cerchio con area maggiore in una sequenza di Cerchi fornite da tastiera.  Il metodo main dell'applicazione si basa su due fasi: üLettura dei Dati üComunicazione del risultato

16 Laboratorio di Ingegneria del Software 16 Schema UML per l’esercizio 1

17 Laboratorio di Ingegneria del Software 17 Esercizio 2  Basandosi sul diagramma nella slide seguente:  Implementare le classi  Nel main istanziare alcune istanze di Dirigenti e Segretarie, Universitari e Scolastici,  Stampare per ciascuno nome cognome codice fiscale e stipendio (per I lavoratori), tasse (per gli studenti)

18 Laboratorio di Ingegneria del Software 18 Schema UML per l’esercizio 2

19 Laboratorio di Ingegneria del Software 19 Esercizio 2  Variante 1 Modificare l'esercizio inserendo un metodo astratto stampa in persona. Questo metodo deve stampare nome cognome CF e stipendio (per i lavoratori), tasse (per gli studenti) Nel main inserire un array di Persone e riempirlo con Dirigenti e Segretarie, Universitari e Scolastici, Stampare per ciascuno usando il metodo stampa  Variante 2 Modificare l'esercizio togliendo il metodo astratto stampa in persona. Questo metodo deve stampare nome cognome CF e stipendio (per i lavoratori), tasse (per gli studenti) Nel main inserire un array di Persone e riempirlo con Dirigenti e Segretarie Universitari e Scolastici, Stampare per ciascuno nome cognome CF e stipendio (per i lavoratori), tasse (per gli studenti) Attenzione alla stampa (bisogna usare l’operatore instanceof...)


Scaricare ppt "Laboratorio di Ingegneria del Software Laboratorio di Ingegneria del Software Primo Incontro Titolare Prof. Pierluigi Sanpietro."

Presentazioni simili


Annunci Google