関数アダプタって本当に使っている人いるのだろうか?
そろそろ枯れて来た感のあるC++
ふと思うのは、関数アダプタって本当に使っている人いるのだろうか?
いや、いるといえば、いるのだろうが・・・普通にforで回して{}の間に書いちゃダメなのか?って処理まで関数アダプタで書かない方がいいだろうと。
構わないんだが、関数アダプタで書かれると、レビューする時にコードがforとちがう遠いところにあるので、検索するなりジャンプするなり一手間必要。
書いている本人にすれば便利なのかも知れないが、レビューする方としては迷惑きわまりない。
レビューする方は下手すれば100人、200人のコードを見なければいけないわけで・・・。そういう僅かな差が積もり積もって効率に影響してくる・・・ねぇ?
それが本当に必要なケースなら関数アダプタを使うのも悪くないだろうが、それ以外のケースでは可読性を落とすだけだと、思うわけで。
さて、そうなったときに、関数アダプタって本当に使っている人いるのだろうか?というのも、関数アダプタが必要なケースなんてあまりないだろうなぁと。
関数アダプタにするからには、関数化するぐらいに十分長いアルゴリズムであって、かつ、2つ以上の箇所で再利用されていて、かつそれが、別のタイプのコンテナである場合だ。
大抵の場合は、そんな長いアルゴリズムならば、関数アダプタ化ではなく、クラス化してコンテナごと隠蔽した方が楽だろう。
そう考えると、関数アダプタって本当にレアケースだなぁと思う。論理的には面白いが、工業製品としては使いにくいなぁと。
関連する記事はありません.