見出し画像

【Asciidoc】ダイアグラム ー UMLって? ー

今回、いろいろなコード例をと思っていたのですが・・・ふと。。。
「UML」を利用して資料を残しているところはどのくらい在るのだろう。
自分が勤めた会社では読める人も書ける人もいなかった。
(技術力が低かったのか、給与に反映されないので隠していたか。。。)
最近、本屋でも「UML」テーマの本は少なくなった。

もしかして、「PlantUML」っていらない子?

などと冗談を言っていても仕方がない。
「PlantUML」とは。。。

本家のサイトを読んでもらったほうが解りやすい。
「UML」の(日本語だけど日本人向きではない説明ではあるが)基本的な書き方もしっかりと紹介されている。
「UML」をもっとわかりやすくコミック的に知りたいと言う人には

とか・・・・・・。
最近流行りの「なんとか的思考(指向ではない・・・)」ってやつか?
確実にオブジェクト指向ではないような気がするが・・・
このやり方は解りやすい反面、「物語ストーリー指向」的な設計を生みやすいような気がする。(注:「物語ストーリー指向」は自分の造語と思いますので一般的な表現では無いはずです。)
プログラマーが「オブジェクト指向」や「構造化指向」を理解せずに「物語ストーリー指向」するとスパゲッティが出来上がるのだが。。。。
 「ストーリー」 ⇒ 「UML」
でも、うん、このやり方は面白いよね。

で、手抜きして

はじめに神は天と地とを創造された。
地は形なく、むなしく、やみが淵のおもてにあり、神の霊が水のおもてをおおっていた。
神は「光あれ」と言われた。すると光があった。
神はその光を見て、良しとされた。神はその光とやみとを分けられた。
神は光を昼と名づけ、やみを夜と名づけられた。夕となり、また朝となった。第一日である。

創世記

を「ChatGPT」に「PlantUML記法でユースケース図にして」とお願いしてみた。

@startuml
actor 神

usecase "天と地を創造する" as UC1
usecase "光を創造する" as UC2
usecase "光とやみを分ける" as UC3
usecase "昼と夜を名づける" as UC4

神 --> UC1
神 --> UC2
神 --> UC3
神 --> UC4

@enduml

と出力されて、インクルードして変換すると

日本語創世記

こうなります。
さて、本家と言うか英語版。

In the beginning God (Elohim) created [by forming from nothing] the heavens and the earth.
The earth was formless and void or a waste and emptiness, and darkness was upon the face of the deep [primeval ocean that covered the unformed earth]. The Spirit of God was moving (hovering, brooding) over the face of the waters.
And God said, “Let there be light”; and there was light.
God saw that the light was good (pleasing, useful) and He affirmed and sustained it; and God separated the light [distinguishing it] from the darkness.
And God called the light day, and the darkness He called night. And there was evening and there was morning, one day.

The Creation

を「ChatGPT」にお願いしてみたら。

@startuml
left to right direction

actor God as "神 (Elohim)"

rectangle "創造" {
    usecase "天と地を創造" as UC1
    usecase "光を創造" as UC2
    usecase "光と闇を分ける" as UC3
    usecase "昼と夜を定義する" as UC4
}

God --> UC1 : 創造する
UC1 --> UC2 : 光を創造する
UC2 --> UC3 : 光と闇を分ける
UC3 --> UC4 : 昼と夜を定義する

@enduml

と出力されて

英語 創世記

こうなります。
両方とも「旧約聖書」の冒頭「創世記」、日本語と英語の違いが在るだけで基本意味は同じはずなんだけど。。。
 日本語は順番無視の「物語指向」的
 英語は順番重視の少し「構造化指向」的
になっている。
この差は面白い。
これは「プログラミング的思考」が日本語と英語で違うということだから。。。
この辺については別記事書こうかな。

今日の教訓
 「ChatGPT」は言語によって答えが変化する。
 (決して彼は人種差別しないはずだ)
 あと、単純な質問では「オブジェクト指向」の作図をしてくれない。
 (ついでの翻訳はしてくれる)

さて、今回はこのあたりまで・・・・・・

…ではまた。

当Noteは下記の「AsciiDoc Language Documentation」の文法に従っています。


いいなと思ったら応援しよう!