13.07.2015 Views

Bouml reference manual - Fedora Project Packages GIT repositories

Bouml reference manual - Fedora Project Packages GIT repositories

Bouml reference manual - Fedora Project Packages GIT repositories

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

file:///C:/uml/BOUML/bouml_3.0/doc/TOUT.html49 of 378 07/10/2007 15:55ClassA class may contain nested classes, relations, attributes, operations , extra members and dependencies on packages. The order of theclass's sub-items is very important because it is followed by the C++/Java/Idl generators.The representation of a class in the browser indicates if the class is abstract or is a template class, furthermore a nested class icon hareduced size :Aclassis the support to define all kinds of class depending on the languages, the stereotype specify what a class is. The way a stereotypetranslated for each language is configured and is specified through the generation settings. You can set a default list of stereotypes for theclasses and their relations through the edit default stereotype entry of the project's menu.Some stereotypes have a special meaning for BOUML :typedef: a class having this stereotype may have an associated base type used to construct the typedef. It is not possibrelation/attribute/operation to a class stereotyped typedef, nor to define it as a template (but it may instantiate a template). Thisstereotype doesn't have sense in Java.enum : a class having this stereotype is an enum, need at least the JDK 5 in Java. Because a Java JDK 5 enum may have attrirelations and operations, it is possible to add these kinds of members to a class having the stereotype enum, but their defaudefinitions are empty in C++ and Idl. it is not possible to define or instantiate a template,they are not yet managed in Java. In Phpan enum produces a class having only const variablesenum_pattern : a class having this stereotype is an enumeven in Java for which a special definition compatible with JDK release less than 5 is produced. it is not possible torelation/operation to a class stereotyped enum nor to define or instantiate a template.union : a class having this stereotype cannot instantiate a templateactor : just to change the representation, not relevant for the code generatorsObviously because you may change the stereotype at any time, it is possible to define for instance a class with an operation and after thatto change its stereotype to enum_pattern... In this case BOUML does nothing, for instance it does not delete itself the operation to help you to come back to a more approstereotype without undesirable modifications.The extend of the previous stereotypes include C++ and Java and Idl both. This means for instance that you cannot add an operation to anenum_pattern independently of the translation of this stereotype in C++/Java/Idl specified through the generation settings. But it is alsopossible to have stereotypes with an extend limited to each language through the definition of new stereotypes. For instance, if you definethe stereotype eiu which is translated by enum in C++, interface in Java and union in IDL through the generation settings, you will haveexactly that you want : magic ! isn't it ?The stereotypes known at each language level by BOUML are :

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!