私はいくつかの内部プライベートクラスを持っています。私はクラスダイアグラムにそれらを入れる場所が不明です。 外部クラスにあるべきか、それとも自分で行うべきか?プライベートクラスとuml
答えて
UMLは、複雑なアーキテクチャを設計または記述するためのものです。私は内部クラスがUMLクラス図で言及することが重要であるとは思わない。あなたのシステムをインターフェイスレベルで実装するように設計すれば、プライベートクラスだけでなく、すべてのプライベートメソッドもフォーカスが外れます。ダイアグラムにはパブリックメソッド=インタフェースメソッドのみが含まれている必要があります。
containment
で外部クラスの側に+
という記号を付けることで、それらを外部で表すことができます。あなたはそれを見つけることができますhere。
私はあなたがUMLクラス図で別のクラスの中にクラスを持つことはできないと思います。あなたがUMLでそれらを提示する方法は、親クラスとの構造的関係を反映する必要があります。それらが単に利便性のために内側に作成されている場合は、それらを接続することができます。それらが包含関係または集約関係を持つ場合、UMLには適切な構文があります。いずれにしても、内部クラスは言語固有であるため、UMLが明示的にサポートするのは変わってしまいます(実際には誤った設計です)。
潜在的に関連する外部の議論:http://www.coderanch.com/t/99318/patterns/Inner-Class-UML
ありUMLの違いは、あなたが使用している言語とどのようなモデリングツールは、常にですので、何かを達成するための最善の方法は、ツールに依存しています。
UMLでは、クラスはクラスメンバーのように可視性/有効性を持っています。言い換えれば、UMLではプライベートクラスが許可されていますが、それはあなたのツールがクラスの「プライバシー」を表示できるわけではありません。
UMLでは、クラスに他のクラスも含めることができます。つまり、クラスはパッケージとして動作することができます。ここでも、ツールがこれをどのように表示するかは異なります。
純粋なUMLの観点からは、内側のクラスが外側にあり、privateとマークされていることをお勧めします。
ダイアグラムでは、ツールで名前空間が表示されない場合は、外側のクラスのサイズを変更して内部を配置することができます。あなたのツールがサイズ変更を許可するなら、それはです。
最後に、合計で8または10のクラスしかない場合は、内部クラスを別の図で表示することをお勧めします。
これは私が見つけた解決策はある
ソースhttp://www.informit.com/articles/article.aspx?p=336264&seqNum=3
- 1. プライベートクラスのユニットテスト
- 2. UML 2.1.2とUML 2.2の違い
- 3. サブパッケージ間のJavaプライベートクラス
- 4. セキュリティダイアグラムとUML
- 5. UMLとjavaクラス
- 6. UML、JavaとArrayListの
- 7. UmlダイアグラムTomcatとAxis2
- 8. 名前空間内のプライベートクラス
- 9. OOPS&プライベートクラスについて
- 10. C#のプライベートクラスの概念
- 11. C#ネストされたプライベートクラス
- 12. UMLダイアグラムとプランニングヘルプが必要
- 13. フロー図とUMLアクティビティ図
- 14. カーディナリティ "*"と "0 .. *"の違い - UML
- 15. 無料UMLツール - UMLへのJava(NetBeansの)
- 16. UMLメッセージロジック
- 17. UMLカスタムイメージエクステンション
- 18. UMLページコネクタ
- 19. operator <<のネームスペースのプライベートクラスへのアクセス
- 20. Javaでプライベートクラスを設定する
- 21. パッケージのプライベートクラスを非公開にする
- 22. Android:AsyncTaskおすすめ:プライベートクラスまたはパブリッククラス?
- 23. Doxygen - Objective-C - プライベートクラスの関数Private
- 24. JUnitでプライベートクラスを参照する
- 25. プライベートクラスからパブリッククラスのメソッド/フィールドへのアクセス
- 26. C++プライベートクラス変数を関数に送る
- 27. Javaでのプライベートクラスの長所と短所は?
- 28. フレックスベースのUMLデザイナ
- 29. UMLダイアグラム - ディスカッション
- 30. UMLクラス図:コレクション