ホーム > 読んだ

William J. Brown, Raphael C. Mal
アンチパターン
ソフトウェア危篤患者の救出

ガイド

書誌

authorWilliam J. Brown, Raphael C. Malveau,Hays W."Skip" McCormick III, Thomas J. Mowbray
editor岩谷宏(訳)
publisherソフトバンク
year1999
price2,400+tax
isbn7973-0758-7

目次

1本文
2抄録

履歴

editor唯野
2002.2読了
2002.3.14公開
2002.11.28修正
2020.2.25文字化け修正

書名から察しがつくのかもしれないが、デザインパターンを意識して考えられた「ソフトウェア開発においてネガティブな結果を招くパターン集」の本。実をいうと私はまだデザインパターン本体の方をちゃんと理解するには至っておらず(GoF 本もななめ読みレベルである)、そういう意味では読む順序を間違えているともいえる。しかし、GoF 本より後に登場しているだけあって、GoF 本を越えるための試みもいくつかある。例えば、これは私も感じた欠点のひとつだが「長い説明の後で実は結論があまりにもあっけなくて拍子抜けした」というものがある。「それならばもっと分かりやすい結論を先に書いてくれ」というところだが、本書の場合、訳者によるあまりこの手の技術書では見かけないような訳語と相まって、そのような点での読みにくさはかなり軽減されているように思う。(まあ、逆にこの訳語が嫌だという人もいそうな気はしますが。)

本書の著者はいずれも OOP のエキスパートで CORBA 関連の著作があり、それゆえ OOP の知識は前提、その上で IDL や IIOP、オープングループという(CORBA 絡みのキーワードを用いた)優位性に絡めた説明が割と多い。そのせいで、ごくたまに相応の予備知識がないと理解できない箇所がある。つまり、個々のパターンを読むだけであれば特に問題はないが、割と上級書に近い感じがありバランス面ではいまいちということだ。とはいえ、物事に対するネガティブ面に立ったアプローチは非常にうまいと思うし、個々のパターンもうなずけるものが多いので、個人的に敬遠するよりは一読に値する本だと思う。

抄録

xvi/xvii/xxiv/10/17/20

やってはいけないこと、このままではやりそうなこと(否定的なパターン)に早期に気付くことの重要性。ソフトウェアの失敗が普遍的なのは実践されているデザインパターンよりもアンチパターンの方が圧倒的に多いためである。それゆえアンチパターンを問題の検知(問題のある解法)と解決策(再構想(refactoring)による解法)とでセットにして提示する。デザインパターンも解決する問題より生起する問題の方が多ければアンチパターンであり、つまりパターンが良好かどうかは状況に依存する。アンチパターンは組織全体のレベルを視野として捉えられなければならない。ここではそれらを以下の 3 つに分類する。cf.9

  • 開発の次元のアンチパターン
  • アーキテクチャの次元のアンチパターン
  • 管理の次元のアンチパターン

7