2010-12-14 5 views

risposta

7

di carta su The Rationale of Powertype-based Metamodelling to Underpin Software Development Methodologies dà una definizione di clabjets, due costrutti sfaccettate che hanno proprietà di classi e oggetti:

Questa idea di un costrutto due sfaccettato o clabject è perfetto per le nostre esigenze, dal momento che modella un singolo concetto modellato simultaneamente come classe e come oggetto. Piuttosto che vedere la classe WriteMethodCode e l'oggetto “WriteMethodCode”, come entità separate nello strato di metodo, possiamo guardare a loro come un unico un'entità, un clabject, di nome #WriteMethodCode. Pertanto, #WriteMethodCode mostrerà un aspetto di classe (con un nome e possibilmente alcuni attributi e relazioni ) più un facet dell'oggetto (con valori e collegamenti). L'aspetto classe di un livello metodo clabject, come abbiamo spiegato prima, è un sottotipo di una classe metamodel (Task nel nostro esempio), mentre la sfaccettatura oggetto nello stesso clabject è un'istanza di una diversa metamodello classe.

+2

Il concetto non è stato inventato lì. È stato introdotto, per quanto ne so, da Atkinson & Kühne in alcuni dei loro articoli dei primi anni 2000, e poi usato da noi in una serie di articoli che Boris cita nell'area metamodellante. Viene anche utilizzato e definito in modo semi-formale dallo standard ISO/IEC 24744. Ma, in fondo, la definizione data da Boris è corretta. – CesarGon