skillup

技術ブログ

アーキテクト設計全般

ステートパターンについて

投稿日:2022年9月18日 更新日:

トランザクション系のデータの場合、スタータスの遷移がキーになることが多く、仕様の把握に関してこの部分の理解が重要です。

今まで、ステータスの遷移に関してはExcelを使って表現していたことが多かったのですが、ステートマシーン:StatusMachine(あるいはステートパターンと呼ぶこともあるようです。)と言うデザインパターンがあり、簡単に言いますとステータスの遷移や関わり方をUML上で表現したものになります。

10.ステートマシン

19.State パターン

利点としては以下のような点でしょうか。

  • 状態の遷移が画面上でわかる
  • Excelでは表現が難しい複数方向の遷移など立体的な情報を表現できる
  • 遷移時の条件などを追加させることができる

UML自体、仕事のための仕事のようなイメージがあり、実装が先行するような現場ではあまり使われることはなかったのですが、熟練の方が先日使われたのをみていて、これは今までのプロジェクトでもぜひあったらよかった!と思ったものでした。

UMLの中でもシーケンス図とこのステートマシーンはメリットが大きいかと思います。

-アーキテクト設計全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

オブジェクト指向設計 柔軟なインターフェイス

オブジェクト指向シリーズ。今回はインターフェイスについて。 インターフェイスといっても、implementsを使った実装だけではなく、要はあるクラスが外部の窓口となるときに使うメソッドってことだと思う …

no image

abstract,interface,traitなどについて

昔はようわからなかったabstract(継承全般)、interface、traitの使い分けなどについて。 今の現場でいろいろと考えることがあり、自分なりにいろんな方の知見を共有できたので、メモしてお …

no image

HTTPリクエストの分類について(POST、PUT、PATCT)

HTTPリクエストの分類(主に更新系のもの)について。 Contents1 POST2 PUT3 PATCH POST 更新系の代表的なHTTPリクエストですね。 通常はデータの取得=GET、更新=P …

no image

クリーンアーキテクチャーがらみの話題など

クリーンアーキテクチャに関してメモ。 自分がプログラミングを学習したのは10年ほど前ですが、当時はいわゆるMVC(Model – Controller – View)でアプリケ …

no image

ここ1年ぐらいで再確認したネタなど

今の現場では比較的、いわゆるモダンな環境で開発をしていることもあり、非常に勉強になります。 今の現場に入る前に10年近くはPHPをやっていますが、まだまだ知らないこと(といいますか新しいことがふえてき …

アーカイブ