著作一覧 |
大日本印刷は五反田の外れ、目黒川沿いにある。
凸版印刷は音羽の外れ、神田川沿いにある。
紙は重いからだろう。
なぜ、道路で自動車という発想になったのだろうか?
慣らして舗装するのと、穴掘って水を流すんじゃ、前者のほうがコストが低いからかな。水は低きに流れる。
当然のようにUMLはびしばし使いまくりなんだが、なぜかJudeでシーケンス図ばっかりだ。順序重要なのがプロトコル。
さて、それはそれとして、コンピュータの絵とか、ルータの絵とか切り貼り(Visio2007で。なんか、2002かな? のばかみたいな保存時の遅さとかなくて気分良く動くんだけどなぜなだろう。もともとネットワーク図は軽かったんだろうか)していて、うんざりしてきた。っていうのは、ハードウェア(物理的ノード)はどうでも良くて(おれにとって。でもそれが必要な人もいるので書いてるわけだが)、むしろその中で動くコンポーネントについて示したいからだ。
で、そう言えば、そういう図を見たなぁ(というか書いたなぁ)、と思い出してファウラーのUML本を取り出すと、ノードの中にコンポーネントを入れた物理図書いてるので、またそれをまねしてみたり(このタイプの絵をここ3年くらい書いてなかったということだ)。
で、ネットワーク図を書いてる続きで、Visioで書こうとしたら、そういうノードの中にコンポーネントを入れた絵はどうもうまく書けない。コンポーネントがノードの中に沈んでしまって動かないからだ。というか、コンポーネントそのものがネストとかうまくしないし、よくわからない。よくわからなければ、調べるよりも、やっぱりJudeだな、とJudeに戻して続きを書いたり(でもJudeはJudeでバージョンがちょっと古いからかも知れないけど、インターフェイスとコンポーネントの結合がいまいちうまく書けないのだが、それは別の話)。
で、そんなことしながら、ついついUML本を読み返してやっぱりファウラーはおもしろいなぁ、とあらためて思う。でも、気づくとちょっと古い(第2版)。
で、第3版を買いなおしてみた。
で、まあ、家に帰って読み返して(でも第3版ははじめてだから「返して」はいないのだが、まあいいや)いるのだが、やっぱりこの本は良い本だ。
たとえば、(といきなり読み返しているのが、そればっかり書いているシーケンス図の第3章なわけだが)、シーケンス図の書き方を簡単に説明して、次に読み方を説明する。リターンは後続の呼び出しに利用されるオブジェクトが返ってきたときだけ書くと読みやすいと、オレ流の説明(いやならまねしなくて良いよ)。で、なぜ、シーケンス図が重要なのか、と話は続く。さっき使った図(Orderという抽象的なオブジェクトというかプロセスがすべてを取り仕切る。しかし、シーケンスについては往復がはっきりしているから例として良い)とは別の実装をみてみよう。と、こんだ、呼ばれたオブジェクトが別のオブジェクトを呼び、引数として与えた自分をコールバックする。で、説明。こんな複雑になってくると、まさにシーケンス図を使うとはっきり関連がわかって良いね。と続ける。
ここで、読者はPofEAAを思い出す。
エンタープライズ アプリケーションアーキテクチャパターン (Object Oriented SELECTION)(マーチン・ファウラー)
えーと、最初のシーケンス図はトランザクションスクリプトパターンのインスタンスで、2番目のはドメインモデルパターンのインスタンスですな。
で、ファウラーはそれをここでは、中央制御と分散制御と呼ぶ。そりゃその通りだ。で、分散制御のほうがおれは好き。おれだけじゃなくてOO野郎はみんな好き。だって、データとメソッドが組み合わさってるんだから、呼び出しがネットワーク状になるのは当然ですな(これは、まったくそのとおりで、一部の値オブジェクトを除けば、そもそも論としてゲッタ/セッタが出てくることそのものがおかしな設計なわけだ。だから、フィールドがプライベートかパブリックかなんてどうでもよいし、むき出しだろうがゲッタがあろうが、これも関係ない。だって、外部のオブジェクトがフィールドをさわることそのものがほとんど無い=あるときは例外なんだから、例外的な処理ならなんでもありだ)。
と、UMLの書き方読み方のはずが、いつのまにか設計の話になっている。
で、それだけならばまだ良いが、この本は、パターンカタログになっている点が良い。
各図は各図を書くべきときところ理由があり、それは逆に言えば、あるときところ理由から記述パターンが決まる。
したがって、パターンカタログとして記述できる。で、それの実践となっている(意識してると思うが、そういうことは別に直接は書いていない)。
本当に見事な本だなぁ、とつくづく感心し、そしてなんか力づけられたような気分になり、おれはおれの仕事に戻るのであった。
ジェズイットを見習え |
東京の京の字の口の中に点が打ってあった時代、東京は水の都で血管の様に水路があったと聞きました。それが伝染病防止のため殆どが埋め立てられたそうです。で、川が物流経路として機能しなくなったのと同時にモータリゼーションが進んだのが重なって、ってんじゃないかなあと勝手に想像。