この記事はDataSpiderにおけるコンポーネント間のインタラクションの設計と実装 : 小野和俊のブログの勝手に補足記事です。 コードが良くわからなかったので図を書いてみた。 詳細な説明は元記事へどうぞ。 最も原始的な実装方法: コンポーネントの相互参照 各コンポーネントは、処理に必要なコンポーネントへの参照を直接持っている。 この例ぐらいだと非常にシンプルだが、コンポーネント間が密結合しているため、機能を拡張したいときに問題となる。 Mediatorパターン 各コンポーネントは、別のコンポーネントを直接持つ代わりにMediatorへの参照を持っている。 Mediatorは、コンポーネントからのリクエストに応じて適切なコンポーネントに指示を出す。 Role Objectパターン DIっぽい仕組みが導入されたりして複雑なので、処理に関係ないところは簡略化してあります(本当はコンポーネントが