SQLアンチパターン

楽しく読める本です。そして、とても実用的です!

SQLアンチパターン

SQLアンチパターン

データベース設計は、Webアプリを始め、ほとんどのシステムの性能・拡張性、そして開発のしやすさを決定する非常に設計です。しかし、分かりやすく、かつ実践的な書籍は多くないと思います。この本は、タイトル通り 「こんなデータベース設計を行っては行けない!」 という内容です。

この本はデータベース設計(モデリング)手法を扱った本ではりませんので、データベース設計の基本を理解してる人向けの本ですが、データベース設計をやったことが無くても、何年か開発を行った人なら「ああ以前かかわったシステムのDBこのパターンだったよね・・・」と苦笑しながら読めると思います。

私も、昔かかわったシステムの開発リーダーが「JOINは遅いから使っては行けない」と信じている方で、7章マルチカラムアトリビュート に書かれているように、たくさんの皺寄せがコードに押し寄せて来た事を思い出しました。

読んでみて、私が思ったこの本の良いところは

パターン名が面白い

デザインパターン等のパターンの名前は非常に重要です。内容を的確に表していて、かつ気の利いた名前が付いていないと技術者の間で流行らないと思います。
パターン名は英語をそのままカタカナで書いてますが、ところどころに括弧書きで日本語名が付いています。この日本語が良いですねぇ〜

アンチパターンを使うと、どうなるのかが丁寧に書かれている

アンチパターンを使うと、どんな事が起きるのかについてページを割いて書いてます。もしデータベース(しかも、上司だったりして反論しにくい)設計者がアンチパターンを採用しそうになったら、これを元に反論できると思います。

アンチパターンを使っても良い場合が書かれている

アンチパターンだから絶対に使っては行けない分けではありません、設計では絶えずトレードオフが発生します。 深く検討した結果アンチパターンを使うという選択はあると思います。その為の指針が書かれているのは素晴らしいです。

ORM を使った場合の話しが書かれている

今時のフレームワークを使っている開発者は、当然 ORM(O/R mapping)を使ってますよね。
従来のデータベースの本は、データベースの専門家がデータベースに付いてのみ語ってる本が多く、今どきのプログラマーにはピンと来ないことが多いと思います。
この本は PHPRuby on Rails のコードもたくさん出てきます、ORMを使った場合にはSQLを直接書く場合と異なる事に触れています。

電子版も買えます

http://www.oreilly.co.jp/books/9784873115894/ でPDF, ePub, mobi も買えます !!