2013年6月26日水曜日

『SQLアンチパターン』Bill Karwin

著者 : Bill Karwin
オライリージャパン
発売日 : 2013-01-26
【オススメ書籍紹介】『SQLアンチパターン』Bill Karwin
(エンジニア:金子)

「愚者は経験に学び、賢者は歴史に学ぶ」

冒頭にドイツの宰相ビスマルクの格言が引用されています。

本のタイトルに入っている言葉である「アンチパターン」は「べからず集」であり、それを学ぶことにより、自らが失敗をせずとも他者の失敗から学ぶことができると書いています。

第4章で書かれているキーレスエントリ(外部キー嫌い)は、まさに過去に失敗した事のあるパターンでした。
DB側で参照整合性などの制約を厳しく設定した場合、アプリ側の実装で制約に違反をすることは出来なくなるため、時には制約が邪魔に感じることがあります。
しかし制約を外すということは、アプリ側での完璧なコード実装を前提にしており、それなりの代償を支払うことになると意識する必要があります。
この本を読んでいたら、もう少し慎重に検討していたと思います。
その他にも過去の開発経験を思い起こすと頷ける内容がいくつもありました。

本書ではアンチパターンごとに解決すべき目的や解決策、そしてアンチパターンを用いても良い場合の例外についてまで言及しているので、非常に実態に即した内容になっています。
日々開発をして行く中で、どうする事が最善か、道に迷う事があると思いますが、考える際の指針になる本だと思います。

その他にも「インデックスショットガン」(闇雲インデックス)や、「IDリクワイアド」(とりあえずID)など、エンジニアにはピンとくるような秀逸なタイトルも読んでいて面白いです。

エンジニアの方にはぜひオススメしたい一冊です。