1
/
5

UML(Unified Modeling Language)のどこが言語(Language)なのか?

Photo by Stefan on Unsplash

UMLは、日本人から見ると「図」

UMLって、言語だって知っていますか?
Unified Modeling Language で、ラングエッジ 、つまり言語です。

でも日本人からみると、言語じゃなくてですよね。


まあ、どう見たって、

これでも、日本人から見たら、やっぱりですよね。


「図書館は、蔵書を所蔵する。」

UMLは、英語圏の人から見ると「言語」

でも、これを英語にしてみましょう。


「A Library houses bibliothecas.」
※house:所蔵する、bibliotheca:蔵書、owner:所有者


なんか、UMLのクラス図の並びって、英語の SVO(主語・動詞・目的語) と同じじゃないですか?

はい。

UMLのクラス図って、英語の SVO を絵で描いたものになってます。

つまり、英語圏の人は、普段使う言語を図に置き換えてモデリングできるんです。

英語圏の人から見たら、そのまま言語でしょ。
Modeling Language、モデリング言語

「言語」でプログラミングしたら、、、

普通の感覚で言語ならば、
クラス図描いたら、
それをクラスとして実装して、

book.cs

// (日本人向けの説明)本について書きます
class book
{
    // (日本人向けの説明)本には、タイトルがあります
    public string Title:
}

library.cs

// (日本人向けの説明)図書館について書きます
class library
{
    // (日本人向けの説明)図書館には、蔵書リストがあります。蔵書リストは、bookのリストです。
    List<book> Bibliothecas = new List<book>():

    // (日本人向けの説明)図書館には、蔵書を追加できます
    public void AddBibliotheca(book newBook)
    {
        // (日本人向けの説明) 蔵書リストに追加する、新しい本を
        Bibliothecas.Add(newBook);
    }

    // (日本人向けの説明)図書館では、タイトルから蔵書を検索できます
    public book SearchBook(string targetBookTitle)
    {
        // (日本人向けの説明)ある本、蔵書リストの中にある
        foreach( book bibliothea in this.Bibliothecas ){
            // (日本人向けの説明) その本のタイトルが同じ、探している本のタイトルと、
            if( bibliothea.Title.Equals(targetBookTitle){
                // (日本人向けの説明) 戻す、その本を
                return bibliothea;  // この辺は、Linqで書けばいいのかな.
            }
        }
        return null:  // null返すのが良いかどうかはさておき
    }
}

みたいに、日常の言語的な感覚で、実装することができる。
日本人向けにコメント入れたけれど、英語圏の人ならコメントいらない。

これならば、不具合が少なくなるよね。

どうして、不具合が少なくなるのか?

さぁ、考えてみよう!

※転載元の情報は上記執筆時点の情報です。
 上記執筆後に転載元の情報が修正されることがあります。


UML(Unified Modeling Language)のどこが言語(Language)なのか? - Qiita
UMLって、言語だって知っていますか? Unified Modeling Language で、 ラングエッジ 、つまり 言語 です。 でも日本人からみると、言語じゃなくて 図ですよね。 まあ、どう見たって、 図 。 これでも、日本人から見たら、やっぱり 図 ですよね。 「図書館は、蔵書を所蔵する。」 でも、これを英語にしてみましょう。 「A Library houses bibliothecas.」 ※house:所蔵する、bibliotheca:蔵書、owner:所有者 なんか、UMLのクラス図の並び
https://qiita.com/azuki8/items/4da0cbed0fc010295433


執筆者のページはこちらから


@azuki8のマイページ - Qiita
UMLは、日本人から見ると「図」 UMLって、言語だって知っていますか? Unified Modeling Language で、ラングエッジ 、つまり言語です。 でも日本人からみると、言語じゃなくて図ですよね。 まあ、どう見たって、図。 これでも、日本人から見... はじめに よく考えると、UMLが特定のプログラミング言語に依存していないことは、 みんなが承知していることだと思います。 でも、UMLの中に出てくる言葉には、特定のプログラミング言語に出てくる言葉と、 同じ言葉が使われていることもあります。
https://qiita.com/azuki8?page=2
株式会社豆蔵's job postings

Weekly ranking

Show other rankings