KONOTI

この世界で得た知識・情報まとめ

【VSCode】PlantUMLでクラス図を書く方法

  • 作成日:2024/10/15

Visual Studio Codeでクラス図を書くやり方を簡単に解説します。 初心者向けです。

PlantUMLの説明と導入

PlantUMLとは

PlantUMLとはVSCの拡張機能で、以下のようなクラス図を簡単に書けるものです。

PlantUML作成例

この例ではクラス継承や関係などを簡単に記載したものですが、より複雑な設計図を作ることも可能です。

事前準備

  • Visual Studio Codeをインストールする
  • Javaをインストールする

PlantUMLのインストール方法

VSCodeを開き、拡張機能の検索画面にて「PlantUML」と入力します。

PlantUMLのインストール

PlantUMLをインストールします。これで導入は完了です。

PlantUMLの使い方

VSCodeで拡張子が「.pu」の新規ファイルを作成し、中身を以下のように書きます。

test.pu

    @startuml
    
    class test{
        string:data
        out(data):void
    }
    
    @enduml
    

「Alt+D」を押下するとプレビュー画像が表示されます。

図の保存

「F1」または「Ctrl+Shift+P」押下でVSCodeの上部にコマンドパレットが表示されます。

PlantUMLのエクスポート

出力したいファイル形式を選ぶと保存完了です。 VSCode右下に以下のような表示がでるので「View Report」を押下します。

PlantUMLのエクスポート2

VSCodeの下部に図の保存場所が表示されます。

PlantUMLのエクスポート3

今回はpng形式で保存しました。

クラス図の書き方

ここからはより詳しいクラス図の書き方を紹介します。

クラス

クラスの書き方です。以下はフィールドとメソッドをそれぞれ1つもつクラスの例です。

test.pu

    @startuml
    
    class test{
        + int a
        - void run()
    }
    
    @enduml
    

+とーはアクセス修飾子です。

コード表記 アクセス修飾子 意味
+ public どこからでもアクセス可能
- private 自分のクラス内でのみアクセス可能
~ package private 同じパッケージ内でアクセス可能
# protected 自分のクラス、またはその派生クラスからアクセス可能

先ほどのコードをクラス図にするとこのようになります。

クラス図

クラス間の関係

クラス間の関係を表現する場合は以下のような書き方をします。

関係 コード表記 サンプル 意味
継承 A <|-- B 継承 Aが継承される側。Bが継承する側。BクラスはAクラスの特性を引き継ぐ。汎化ともいう。
実装 A <|.. B 実装 Aが実装されるインターフェース。Bが実装するクラス。BクラスはインターフェースAをimplementsして実装する。
関連 A -- B 関連 AクラスとBクラスは比較的強い関連がある。
依存 A <.. B 依存 AクラスとBクラスは比較的弱い関連がある。
集約 A o-- B 集約 AクラスとBクラスの関係が「全体と部分」である。関連の1種。
コンポジション A *-- B コンポジション AクラスとBクラスの関係が「全体と部分」である。強い集約。

コメント

図にコメントをいれる場合は「note 方向 of クラス名」と書きます。 方向は上(top),下(button),左(left),右(right)が指定可能です。

test.pu

    @startuml
    
    class A{
    }
    
    ' コメント
    note top of A
    aaaaabbbbbbccccc
    end note
    
    @enduml
    
コメント

これは上にコメントを入れた例です。

サンプル

クラスや関係を用いて簡単なサンプルを紹介します。

test.pu

    @startuml
    
    ' クラスの定義
    
    class A{
    
        +string data
        +void fun(data)
    }
    
    class B {
    
    -int test()
    
    }
    
    ' 関係性の設定
    
    A <|- B
    
    ' コメントの設定
    
    note left of A
    Aクラスの説明
    end note
    
    note top of B
    Bクラスの説明
    
    end note
    
    @enduml
    

このコードを図に出力すると以下となります。

PlantUML作成例2

以上、クラス図の書き方でした。

この記事のシェアはこちらから

当サイトについて

当サイト(KONOTI)は、日常生活において運営者が得た情報をご紹介するサイトです。 ジャンルに多少の偏りはありますが、基本的には様々な情報を取り扱っていく予定です。

Contact

当サイトへのご連絡は以下よりお願いします。

PAGE TOP ▲

© Copyright 2024 KONOTI