Architettura Logica Flashcards

1
Q

Come si passa dal “cosa deve fare il sistema” al “come il sistema si comporta”?

A

Si definisce la struttura della soluzione ad un alto livello di astrazione

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Cos’è l’architettura SW?

A

E’ l’insieme che raggruppa:

  • le decisioni significative sull’organizzazione di un sistema SW
  • gli elementi strutturali, delle relative interfacce e collaborazioni
  • la composizione in sottosistemi
  • lo stile architetturale
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Cos’è l’architettura logica?

A

E’ l’organizzazione su larga scala delle classi SW in package, sottoinsiemi e strati

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Quale è uno stile comune per l’architettura logica?

A

Lo stile a strati

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Quando ha senso parlare di architetture SW?

A

Quando si ha a che fare con sistemi di grosse dimensioni

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Cos’è uno strato?

A

E’ un gruppo a grana molto grossa di classi, package o sottosistemi, che ha delle responsabilità coese rispetto a un aspetto importante del sistema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Cosa significa “architettura a strati stretta”?

A

Che uno strato può solo richiamare i servizi dello strato immediatamente più basso

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Cosa significa “architettura a strati rilassata”?

A

Che uno strato può richiamare i servizi di uno qualsiasi degli strati più in basso

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

In genere cosa cambia tra gli stati inferiori e superiori?

A

In genere gli strati inferiori espongono servizi generali, mentre quelli superiori sono più specifici per l’applicazione

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Che “direzione” ha l’accoppiamento nell’architettura a strati?

A

Dall’alto al basso

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Quali sono i vantaggi di una buona progettazione a strati?

A
  • La separazione degli interessi permette una minore dipendenza tra gli oggetti e una maggiore coesione e possibilità di riuso
  • Ogni strato può essere ulteriormente scomposto
  • Alcuni strati possono essere sostituiti da nuove implementazioni
  • Gli strati più bassi contengono funzioni riusabili
  • Lo sviluppo in team è favorito dalla segmentazione logica
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Quali problematiche si possono affrontare nello sviluppo di un’ architettura SW?

A
  • Alto accoppiamento che comporta una difficile evoluzione del sistema
  • La logica applicativa può essere condivisa con le GUI
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Cos’è un oggetto di dominio?

A

Un oggetto SW che rappresenta una cosa nello spazio del dominio del problema e ha una logica applicativa correlata

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Cos’è lo strato di dominio?

A

Uno strato dell’architettura che contiene gli oggetti di dominio per gestire la logica applicativa

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Quali tipi di pattern esistono?

A
  • Pattern architetturali, si applicano su larga scala (es. pattern layers)
  • Design pattern, si applicano su una scala piccola-media (es. GoF)
  • Idiomi, cioè soluzioni progettuali di basso livello (es. singleton)
  • “Strategie”, cioè consigli per risolvere un problema in modo efficace
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

A cosa servono i package?

A

Raggruppano un insieme di responsabilità coese

17
Q

Cosa dice il principio di separazione modello-vista?

A

Che gli oggetti di dominio (modello) non devono essere connessi direttamente agli oggetti UI (vista)

18
Q

Come si può aderire semplicemente al principio modello-vista?

A

Usando il design pattern observer, infatti gli oggetti del livello di dominio non sanno con quali elementi della UI sono associati

19
Q

Nell’MVC di cosa si occupa il model?

A

Incapsula lo stato della applicazione

20
Q

Nell’MVC di cosa si occupa il controller?

A

Definisce il comportamento dell’applicazione

21
Q

Nell’MVC di cosa si occupa la view?

A

Fa il rendering del model e fa richieste al controller