#プリキュアシリーズ
以前から気になってはいたのですが、
プリキュアの各言語での実装まとめ
を見て、【UMLでプリキュア】を書くことを決意しました。
仕様は、前出のプリキュア記事からざっくりと拾いました。
#クラス図
以下を静的構造分析します。
- プリキュアシリーズとは、複数のプリキュア作品を含みます。
- プリキュア作品には、タイトルがあります。
- プリキュア作品には、それぞれプリキュアが登場します。
- プリキュアには、本名のほかにプリキュアとしての名前があります。
- プリキュアには、それぞれのカラー・変身のセリフ・攻撃のセリフがあります。
- プリキュアは、変身時に他のプリキュアが同じ場所にいる必要がある場合があります。
ほとんど、解説の必要のないクラス図だと思います。
いくつか、ここから説明しやすい解説を入れてみます。
##同じプリキュア型の属性表記について
属性の「変身時に同時にいる必要のある相手」は、次のように表記することもできます。
型が「プリキュア」なためです。
※より厳密には、両方の関連端が属性に入らないと、等価にはなりません。
##継承について
あと、変身前と変身後のプリキュアを
変身前=「人」クラス
変身後=「プリキュア」クラス
とするのは、NGです。
継承は、オブジェクトの状態変化を示しません。
プログラミング言語で考えると分かりやすいと思います。
ベースクラスをインスタンス化して、
それとは別に、継承後のクラスをインスタンス化すると、
それらは、同じオブジェクト(=インスタンス)ではないですよね。
変身前と変身後を継承にしてしまうと、
プリキュアは変身する時に、一度死んで、またプリキュアとして生まれることになります。
変身を解くときも同様になってしまいます。
注意してください。
#ステートマシン図
次に、ふるまい分析をします。
状態を持つ主要なオブジェクトは「プリキュア」と判断し、ステートマシン図により分析!
覚醒するトリガって何だろう? と考え、
ひとまず、「覚醒」というものが外から訪れるという理解にしましたので、
クラス図に手を入れて、「プリキュア」クラスの「操作」に「覚醒」を追加しました。
以上。
いいねが多かったら、続けてみようかな。
コード変換とか、設計編とか。
なんて、いいねを誘ってみる...(^^。