Object Constraint Language: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
|||
Riga 1:
{{WIP|Moongateclimber}}
L'<b>Object Constraint Language</b> o '''OCL''' è un
In UML, in genere, OCL viene utilizzato per descrivere proprietà di ''istanze'' di ''classificatori''; l'esempio più comune di istanza di classificatore è un ''oggetto'' istanza di una ''classe''. Le asserzioni OCL possono descrivere una [[invariante|invarianti]] che legano i valori degli attributi di un oggetto, precondizioni e postcondizioni delle operazioni, valori iniziali di attributi, o regole di derivazione per gli attributi derivati. La versione 2.0 del linguaggio (che sono stati aggiunti nuovi elementi [[sintassi|sintattici]] e [[semantica|semantici]] per definire interrogazioni.
L'OCL è un linguaggio testuale attraverso il quale si possono esprimere ''vincoli'' (in [[lingua inglese|inglese]] ''constraint'') e ''interrogazioni'' (''query'') che arricchiscono un modello a oggetti con informazione non esprimibile con la notazione [[diagramma|diagrammatica]] prevista dal metamodello in uso. Le espressioni OCL possono essere utilizzate per esprimere, per esempio, [[invariante|invarianti]], [[precondizione|precondizioni]] e postcondizioni, [[guardia (informatica)|guardie]] e regole di derivazione. La valutazione delle espressioni OCL è sempre intesa come priva di [[effetto collaterale|effetti collaterali]].▼
==Descrizione generale==
I vincoli OCL sono in genere asserzioni che specificano, in modo formale, proprietà di determinati elementi di un modello. Il linguaggio include elementi del [[calcolo dei predicati del primo ordine]], attraverso i quali si possono esprimere informazioni non descrivibili in altro modo nei [[diagramma|diagrammi]] UML.
▲
==Descrizione==
===Applicazioni===
|