makotan _at_ gmail dot com

「何か」って?

何かって何かって話ですがそれが何か?
ドラマ見ながら書いてるから一部変な部分があるかも・・・
「絵を描いてその通りに何かの状態を管理するもの」の「何か」ってな〜に?っていうと多分ワークフローエンジンの開発者がどう考えてどう実装するかに関係してきて方法は3つ

  • 一つ目はワークフローエンジンに「何か」の構造を教える方法、これが大抵の大手のワークフローエンジンで採用してると思う。いわゆるTokenって呼ばれる情報。この情報を持って3回回ってワンってやったりする。
  • 二つ目はある値一つ(JavaでいうとLongとかStringとか)を管理する方法。実装的には実はこれが一番簡単な様な気がする
  • 三つ目はエンジンも知らないけどDBとI/O出来る情報をそのまあ使う方法。意外と面倒なんだけど、ぶりはS2DaoとOGNLを上手に使うことで面倒をちょっと回避してこの方法を使ってる

実際どの方法を使ったとしても、その情報を状態管理することには変わりないけど、重要なのは「何かを状態管理する」のが非常に多いって事。
逆にエンジンで状態管理をしない場合は「何か」そのものに状態情報を持たせることも出来るんだけど、その場合は状態の数とか同時にもてる状態とかそういうのに制約が強く発生する
エンジンで状態管理をしないエンジンがどんな場合に必要かって言うと比較的複雑な画面遷移とかのかなり短期間の状態管理に凄く有効・・・ぶりもある部分を拡張するとできるけど、まったくする気なし