パイプとフィルタ

読み:ぱいぷとふぃるた / 英語表記:Pipes and Filters

データの流れに対する一連の処理を、独立した小さな処理(フィルタ)に分け、それらをパイプでつないで段階的に処理するアーキテクチャパターン。処理の追加や削除、並べ替えがしやすい。

イマシルちゃんの解説

工場のベルトコンベアを想像してみて。
材料が流れてきて、「切る」「色を塗る」「箱に詰める」って、それぞれの係が順番に仕事をするよね。

パイプとフィルタは、データをそんなふうに流して処理する作り方なんだ。
係(フィルタ)を足したり、入れ替えたりするのも簡単なんだよ!

より深い解説

定義

パイプとフィルタは、POSAで紹介されたアーキテクチャパターンの1つで、データストリーム(データの流れ)を処理するシステムの構造を定める。処理を段階ごとに独立したフィルタに分け、フィルタの出力を次のフィルタの入力へパイプでつなぐ。

構成要素

要素役割
データソース処理するデータを供給する
フィルタデータを受け取り、変換、選別、加工などを1つ行って、次へ渡す
パイプフィルタとフィルタをつなぎ、データを受け渡す
データシンク最終的な結果を受け取る

利点と欠点

利点欠点
フィルタを追加・削除・入れ替えするだけで、処理の流れを変えられるフィルタ間でデータの形式をそろえる必要がある
フィルタを別のシステムでも再利用できる全体で共有する状態を扱いにくい
独立したフィルタを並行して動かせるデータの受渡しの手間がかかる

例

POSAのほかのパターンとの見分け方

「データストリームに対する一連の処理」「段階的に実施する」「追加又は削除できるように分割」といった言葉があれば、パイプとフィルタである。

実際の試験ではここに出る!

この用語が出てくる記事

↑