2017-01-20 24 views
2

異なるクラス間の線がUML図で交差するのは悪い習慣ですか?それはデザインのにおいですか?あなたのクラスがあまりにも絡み合っている、あるいは独立している、または何かを示していますか?それは常に/一般的に避けられないものですか?それとも私はこれを思っていますか?UMLクラス図 - 線が交差するのは悪い習慣ですか?

興味があれば、私の現在のUML図があります。あなたはラインの交差が避けられないかもしれ、私の意見では

答えて

2

....私は、重複を避けるためにすべての方法の周りの数行をルーティングされていることがわかりますが、私はショーにしようとしていますとき、多くの場合、それが起こります1つの図で多すぎるもの私はこれをデザインの匂いではなく「コミュニケーション」の匂いと見ています。

答えようとしている質問を明示的に書き留めておくと、厳密に必要ではないモデル要素が見つかることがあります。さらに、いくつかの図は、単一の飽和した図よりもアイディア/設計をよりよく伝えるかもしれない。

あなたの例では、既に特定した色付きの領域に沿ってダイアグラムを分解することができます。

3

それがグラフ/図面の理解を妨げることができるので、異なるクラス間の線は、はい

を横断するための悪い習慣です。

が、それは常に/一般的に避けられない

ない全てのグラフは、平面(平面性のテストを参照してください)ですので、時にはそれが避けられません。

しかし、この問題は "私はちょうど周りを回る"というほど簡単ではありません。良いレイアウトを構成したり、優れた視覚的美学に貢献する多くのルールと推奨事項があります。名前にわずか数:

  • 行が
  • (ラインが交差しているときに、いくつかの図の中で小さなを見ているかもしれません)横切る線の数が
  • 総ライン長
  • 階層(曲げます典型的には継承ラインは上向きに描画されるべきです)

すでにいくつかのルールが競合していることがわかります。 レイアウトは常に均衡の取れた動作です。より詳細に興味があるなら、私は、 "グラフの美学"または "自動(グラフ)のレイアウト"のためのグーグルグーグルをお勧めします。

残念ながら私が持っているほとんどの研究論文はペイウォールの背後にあるので、私はpdfsにリンクすることはできませんが、その中にはGoogleの可能性があるものもあります。例えばUML Diagram Layouting: the State of the ArtまたはAesthetics of Class Diagrams

+0

私は橋のアプローチをもう一度! –

1

これまでに交差線がある場合は、停止して図が複雑すぎると思うのが良い時期です。

私はあなたのダイアグラムが同時に抽象的なコンクリートであることを試みていると感じます。私はそれがあまりにも複雑であると見ます。それは、アーキテクチャの概要を提供し、実装に関連する構造的な詳細を示すという点で抽象的です。

個人的には、図をコンポーネント図に分割することがあります。別々のクラス図を使用して各コンポーネントの構造を表現します。

関連する問題