La differenza tra un oggetto passivo e un oggetto attivo in UML

October 16

La differenza tra un oggetto passivo e un oggetto attivo in UML


Il "Unified Modeling Language", o UML, è un linguaggio progettato per mostrare come il software è organizzato; Gli ingegneri possono usare UML al diagramma il flusso di informazioni in un programma, permettendo loro di capire meglio come può essere semplificata o modificato. Quando modellazione flusso di informazioni, UML distingue tra "oggetti attivi" in grado di avviare quel flusso, e "oggetti passivi" che non può.

Oggetti e classi

Quando si tratta di cosiddetti "object-oriented" di programmazione, informatica distingue tra un "oggetto" e di una "classe". Una classe è una descrizione generale di un insieme di cose --- come variabili o metodi --- mentre un "oggetto" è un "istanza" di quella classe, con le sue caratteristiche uniche. Pensate di classi come un progetto o un modello; nel mondo fisico, "scrittura attuare" potrebbe essere considerato una classe, con "penna" o esempi "arancione pastello" degli "oggetti" di quel particolare tipo di classe.

Oggetti in UML

UML conserva una distinzione analoga tra le classi e gli oggetti, e sono rappresentati allo stesso modo; classi UML contengono ampie descrizioni e oggetti UML contengono valori specifici che rappresentano le istanze di queste descrizioni. Formalmente, quindi, un "oggetto attivo" in UML è un qualsiasi istanza di un "classe di attivo", e allo stesso modo di un "oggetto passivo" è un'istanza di una "classe passiva" --- in senso teorico, si potrebbe prendere in considerazione questi termini di essere sostanzialmente intercambiabili.

Oggetti attivi

In UML, le classi attive, e di conseguenza gli oggetti attivi, presenti nel proprio filo delle operazioni e hanno un proprio spazio di indirizzamento. Se l'esecuzione, o l'attività di codice, è pensato in termini di flusso, gli oggetti attivi possono iniziare o controllare che il flusso. oggetti attivi, in altre parole, sono sequenziali e fare qualcosa: modificare le variabili, il comportamento del programma il cambiamento, e così via. In UML, le classi attive e gli oggetti si distinguono per avere un bordo più spesso di oggetti passivi.

oggetti passivi

oggetti passivi in ​​UML non hanno generalmente la possibilità di modificare o iniziare il flusso di esecuzione, perché devono attendere per un altro oggetto di chiamarli. Invece, oggetti passivi sono generalmente utilizzati per memorizzare le informazioni, e in molti casi queste informazioni possono essere condivise tra più altri oggetti. Ciò può consentire oggetti passivi di accedere contemporaneamente, non in sequenza. Per assicurarsi che i dati contenuti all'interno ha un alta integrità, UML permette di oggetti passivi di insistere che essi sono accessibili in sequenza; se due thread tentano di chiamare lo stesso oggetto passivo sequenziale, tale oggetto può ritardare il secondo filo fino a quando il primo ha finito con esso.