Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoMassimiliano Baroni Modificato 9 anni fa
1
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 4 - Progettazione del software Ernesto Damiani Università degli Studi di Milano Lezione 11 – Esempi di pattern e idiomi
2
Esempio di design pattern (1) Nome: Observer Contesto: un componente usa le informazioni pubblicate da un altro componente Problema: la variazione nello stato interno di un componente dev’essere resa nota ad altri componenti – Esigenze: accoppiamento lasco tra componenti; i componenti destinatari dell’informazione non sono noti a priori
3
Esempio di design pattern (2) Soluzione: un meccanismo di propagazione degli aggiornamenti tra un editore (subject) e degli abbonati (observer) al servizio di notifica. La funzione update è comune a tutti gli abbonati.
4
Esempio di idioma (1) Nome: CountedBody Contesto: l’interfaccia di una classe viene separata dalla sua implementazione. Una classe handle presenta un’interfaccia, mentre una classe body associata realizza l’implementazione. I metodi della classe handle contengono chiamate ai metodi della classe body Problema: la occorre minimizzare il numero di istanze della classe body con un meccanismo di lazy copying.
5
Esempio di idioma (2) Soluzione: aggiunta di un contatore di condivisioni alla classe body per facilitare la gestione della memoria. La classe handle gestisce la memoria, attraverso metodi per inizializzazione, assegnamento, copia e distruzione. Ogni operazione che modifica lo stato di una classe body condivisa ne crea una nuova, decrementando il contatore di condivisione della copia iniziale FINE
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.