⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 umlcomoad005.htm

📁 软件开发文档大全
💻 HTM
📖 第 1 页 / 共 4 页
字号:
<head><meta NAME="&acute;°&Iacute;&acirc;&Egrave;&iacute;&frac14;&thorn;&sup1;¤&sup3;&Igrave;" Content="Author:Asia Alien"><title>UML元元模型(中文)</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><link REL="stylesheet" HREF="../../newcss.css" TYPE="text/css"></head><body><b>  <blockquote>   <p>     <font size="5"><img border="0" src="i/umldilver.gif" WIDTH="606" HEIGHT="15"></font></p>   <p><a href="umlcomoad000.htm">返回目录</a></p>   <p><font size="5">4.<a name="4"></a> IDL模块</p>    <blockquote>      </font><font face="Arial" size="5"><p></font><font size="5">4.1<a name="4.1"></a>      接口简介</p>    </font>      </b><font face="Times New Roman"><p></font>OA&amp;D工具定义了下列接口模块:</p>      <blockquote>        <p>粗纹(Coarse-Grained)接口:</p>        <font face="Times New Roman"><p></font>OAD_Stream<font face="Times New Roman"></p>        <p></font>OAD_CoarseGrainFacility<font face="Times New Roman"></p>        </font><p>细纹(Fine-Grained)接口:</p>        <font face="Times New Roman"><p></font>Behavior_Elements<font face="Times New Roman"></p>        <p></font>Core_Concepts<font face="Times New Roman"></p>        <p></font>OA&amp;D_Facility<font face="Times New Roman"></p>        <p></font>Structural_Elements<font face="Times New Roman"></p>        <p></font>View_Elements<font face="Times New Roman"></p>      </blockquote>      <p></font><br>      这些接口对应于UML元模型中的包。</p>      <b><font face="Arial" size="5"><p></font><font size="5">4.2 </font><a name="4.2"></a><font size="5">粗纹接口</p>      </font><font face="Arial" size="4"><p></font><font size="4">4.2.1 <a name="4.2.1"></a>OAD_Stream模块</p>      </font>      </b><font face="Courier New"><p></font>module OAD_Stream {<font face="Courier New"></p>      <p></font>interface OAD_Stream : CosExternalization::Stream {}<font face="Courier New"></p>      <p></font>interface OAD_StreamFactory : CosExternalization::StreamFactory {}<font face="Courier New"></p>      <p></font>interface OAD_StreamFileFactory : CosExternalization::StreamFileFactory {}<font face="Courier New"></p>      <p></font> <font face="Courier New"></p>     <p></font>interface OAD_Streamable : CosStream::Streamable {}<font face="Courier New"></p>      <p></font>interface OAD_StreamableFactory : CosStream::StreamableFactory {}<font face="Courier New"></p>      <p></font>interface OAD_StreamIO : CosStream::StreamIO {}<font face="Courier New"></p>      <p></font>};<font face="Courier New"></p>      </font><b><font face="Arial" size="4"><p></font><font size="4">4.2.2 <a name="4.2.2"></a>OAD_CoarseGrainFacility      模块</p>        </font>      </b><font face="Courier New"><p></font>module OAD_CoarseGrainFacility {<font face="Courier New"></p>      <p></font>typedef string Name; // should this be IString?<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>typedef Collection ModelCollection;<font face="Courier New"></p>     <p></font>typedef Collection PackageCollection;<font face="Courier New"></p>     <p></font>typedef Collection DiagramCollection;<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>interface System;<font face="Courier New"></p>      <p></font>interface Model;<font face="Courier New"></p>      <p></font>interface Package;<font face="Courier New"></p>      <p></font>interface Diagram;<font face="Courier New"></p>      <p></font> <font face="Courier New"></p>     <p></font>interface System : OAD_Streamable<font face="Courier New"></p>      <p></font>{<font face="Courier New"></p>      <p></font>attribute Name name;<font face="Courier New"></p>      <p></font>attribute ModelCollection models;<font face="Courier New"></p>      <p></font> <font face="Courier New"></p>     <p></font>Model add_Model();<font face="Courier New"></p>     <p></font>void remove_Model(in Model theObject);<font face="Courier New"></p>     <p></font>};<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>interface SystemFactory {<font face="Courier New"></p>      <p></font>System create();<font face="Courier New"></p>      <p></font>System create(in Name theName);<font face="Courier New"></p>     <p></font>}<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>interface Model : OAD_Streamable<font face="Courier New"></p>      <p></font>{<font face="Courier New"></p>      <p></font>attribute Name name;<font face="Courier New"></p>      <p></font>attribute PackageCollection packages;<font face="Courier New"></p>      <p></font>attribute DiagramCollection diagrams;<font face="Courier New"></p>      <p></font> <font face="Courier New"></p>     <p></font>Package add_Package();<font face="Courier New"></p>     <p></font>void remove_Package(in Package theObject);<font face="Courier New"></p>     <p></font>Diagram add_Diagram();<font face="Courier New"></p>     <p></font>void remove_Diagram(in Diagram theObject);<font face="Courier New"></p>     <p></font>};<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>interface ModelFactory {<font face="Courier New"></p>      <p></font>Model create();<font face="Courier New"></p>      <p></font>Model create(in Name theName);<font face="Courier New"></p>     <p></font>}<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>interface Package : OAD_Streamable<font face="Courier New"></p>      <p></font>{<font face="Courier New"></p>      <p></font>attribute Name name;<font face="Courier New"></p>      <p></font>attribute Model model;<font face="Courier New"></p>      <p></font>attribute DiagramCollection diagrams;<font face="Courier New"></p>      <p></font> <font face="Courier New"></p>     <p></font>Diagram add_Diagram();<font face="Courier New"></p>     <p></font>void remove_Diagram(in Diagram theObject);<font face="Courier New"></p>     <p></font>};<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>interface PackageFactory {<font face="Courier New"></p>      <p></font>Package create();<font face="Courier New"></p>      <p></font>Package create(in Name theName);<font face="Courier New"></p>     <p></font>}<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font>interface Diagram : OAD_Streamable<font face="Courier New"></p>      <p></font>{<font face="Courier New"></p>      <p></font>attribute Name name;<font face="Courier New"></p>      <p></font>};<font face="Courier New"></p>      <p></font> <font face="Courier New"></p>     <p></font>interface DiagramFactory {<font face="Courier New"></p>      <p></font>Diagram create();<font face="Courier New"></p>      <p></font>Diagram create(in Name theName);<font face="Courier New"></p>     <p></font>}<font face="Courier New"></p>     <p></font>};<font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     </font><b><font face="Arial" size="5"><p>4.3<a name="4.3"></a> </font><font size="5">细纹接口</p>      </font><font face="Arial" size="4"><p>4.3.1 <a name="4.3.1"></a>Behavioral_Elements </font><font size="4">模块</p>        </font>      </b><font face="Courier New"><p>#include &lt;CosLifeCycle.idl&gt;</p>      <p>#include &lt;Core_Concepts.idl&gt;</p>      <p></font> <font face="Courier New"></p>     <p></font> <font face="Courier New"></p>     <p>// =======================================================</p>      <p></font> <font face="Courier New"></p>     <p>module Behavioral_Elements {</p>      <p></font> <font face="Courier New"></p>     <p>interface ActualArgument;</p>      <p>interface CompositeState;</p>      <p>interface Vertex;</p>      <p>interface Connector;</p>      <p>interface Interaction;</p>      <p>interface Action;</p>      <p>interface Transition;</p>      <p>interface Event;</p>      <p>interface Link;</p>      <p>interface LinkRole;</p>      <p>interface ActionExpression;</p>      <p>interface StateMachine;</p>      <p>interface TimeExpression;</p>      <p>interface Behavior;</p>      <p>interface Message;</p>      <p>interface ActionState;</p>      <p>interface BooleanExpression;</p>      <p>interface State;</p>      <p></font> <font face="Courier New"></p>     <p>typedef Collection ActualArgumentCollection;</p>      <p>typedef Collection CompositeStateCollection;</p>      <p>typedef Collection VertexCollection;</p>      <p>typedef Collection ConnectorCollection;</p>      <p>typedef Collection InteractionCollection;</p>      <p>typedef Collection ActionCollection;</p>      <p>typedef Collection TransitionCollection;</p>      <p>typedef Collection EventCollection;</p>      <p>typedef Collection LinkCollection;</p>      <p>typedef Collection LinkRoleCollection;</p>      <p>typedef Collection ActionExpressionCollection;</p>      <p>typedef Collection StateMachineCollection;</p>      <p>typedef Collection TimeExpressionCollection;</p>      <p>typedef Collection BehaviorCollection;</p>      <p>typedef Collection MessageCollection;</p>      <p>typedef Collection ActionStateCollection;</p>      <p>typedef Collection BooleanExpressionCollection;</p>      <p>typedef Collection StateCollection;</p>      <p></font> <font face="Courier New"></p>     <p>enum ConnectorKind {</p>      <p>initial, final, history</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface ActualArgument: CosLifeCycle::LifeCycleObject {</p>      <p>attribute {target,_parameter,_participant} value;</p>      <p>attribute Action Action_reference;</p>      <p>attribute Instance Instance_reference;</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface ActualArgumentFactory {</p>      <p>ActualArgument create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface CompositeState: State {</p>      <p>attribute Core_Concepts::Boolean isConcurrent;</p>      <p>attribute Core_Concepts::Boolean hasHistory;</p>      <p>attribute VertexCollection substate;</p>      <p></font> <font face="Courier New"></p>     <p>Vertex add_Vertex();</p>      <p>void remove_Vertex(in Vertex theObject);</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface CompositeStateFactory {</p>      <p>CompositeState create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface Vertex: Core_Concepts::ModelElement {</p>      <p>attribute StateMachine vertices;</p>      <p></font> <font face="Courier New"></p>     <p>attribute CompositeState substate;</p>      <p></font> <font face="Courier New"></p>     <p>attribute TransitionCollection source;</p>      <p></font> <font face="Courier New"></p>     <p>attribute TransitionCollection target;</p>      <p></font> <font face="Courier New"></p>     <p>};</p>     <p></font> <font face="Courier New"></p>     <p>interface VertexFactory {</p>      <p>Vertex create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface Connector: Vertex {</p>      <p>attribute ConnectorKind kind;</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface ConnectorFactory {</p>      <p>Connector create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface Interaction: Behavior {</p>      <p>attribute LinkCollection links;</p>      <p></font> <font face="Courier New"></p>     <p>attribute Structural_Elements::InstanceCollection instances;</p>      <p></font> <font face="Courier New"></p>     <p>Link add_Link();</p>      <p>void remove_Link(in Link theObject);</p>      <p>Instance add_Instance();</p>      <p>void remove_Instance(in Instance theObject);</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface InteractionFactory {</p>      <p>Interaction create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface Action: Core_Concepts::ModelElement {</p>      <p>attribute Message action;</p>      <p></font> <font face="Courier New"></p>     <p>attribute Structural_Elements::Activity activity;</p>      <p></font> <font face="Courier New"></p>     <p>Activity add_Activity();</p>      <p>void remove_Activity(in Activity theObject);</p>      <p>ActualArgumentCollection get_actual_argument();</p>      <p>Instance add_Instance();</p>      <p>void remove_Instance(in Instance theObject);</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface ActionFactory {</p>      <p>Action create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface Transition: Core_Concepts::Relationship {</p>      <p>attribute BooleanExpression guard;</p>      <p>attribute StateMachine transitions;</p>      <p></font> <font face="Courier New"></p>     <p>attribute Event trigger;</p>      <p></font> <font face="Courier New"></p>     <p>attribute ActionExpression effect;</p>      <p></font> <font face="Courier New"></p>     <p>attribute VertexCollection source;</p>      <p></font> <font face="Courier New"></p>     <p>attribute VertexCollection target;</p>      <p></font> <font face="Courier New"></p>     <p>attribute State internal_transition;</p>      <p></font> <font face="Courier New"></p>     <p>Core_Concepts::Name label;</p>      <p></font> <font face="Courier New"></p>     <p>Event add_Event();</p>      <p>void remove_Event(in Event theObject);</p>      <p>ActionExpression add_ActionExpression();</p>      <p>void remove_ActionExpression(in ActionExpression theObject);</p>      <p>Name add_Name();</p>      <p>void remove_Name(in Name theObject);</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface TransitionFactory {</p>      <p>Transition create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface Event: CosLifeCycle::LifeCycleObject {</p>      <p>attribute TransitionCollection trigger;</p>      <p></font> <font face="Courier New"></p>     <p>};</p>     <p></font> <font face="Courier New"></p>     <p>interface EventFactory {</p>      <p>Event create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface Link: Core_Concepts::Relationship {</p>      <p>attribute Core_Concepts::Boolean isCreated;</p>      <p>attribute Core_Concepts::Boolean isDestroyed;</p>      <p>attribute Interaction links;</p>      <p></font> <font face="Courier New"></p>     <p>attribute sequence&lt;LinkRole,2&gt; link_roles;</p>      <p></font> <font face="Courier New"></p>     <p>attribute Structural_Elements::Association link_instance;</p>      <p></font> <font face="Courier New"></p>     <p>LinkRole add_LinkRole();</p>      <p>void remove_LinkRole(in LinkRole theObject);</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface LinkFactory {</p>      <p>Link create();</p>      <p>};</p>      <p></font> <font face="Courier New"></p>     <p>interface LinkRole: Core_Concepts::ModelElement {</p>      <p>attribute Link link_roles;</p>      <p></font> <font face="Courier New"></p>     <p>attribute Structural_Elements::ValueCollection qualification;</p>      <p></font> <font face="Courier New"></p>     <p>attribute Structural_Elements::AssociationRole role_instance;</p>      <p></font> <font face="Courier New"></p>     <p>attribute MessageCollection messages;</p>      <p></font> <font face="Courier New"></p>     <p>attribute Structural_Elements::Instance player;</p>      <p></font> <font face="Courier New"></p>     <p>Value add_Value();</p>  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -