出版社内容情報
12年ぶりの改訂! 内容を大幅改訂し新規章が追加!
リレーショナルデータベースを扱うシステム開発には、様々な場面で陥りやすい失敗(アンチパターン)が存在します。本書では、SQLやデータベース設計を深く掘り下げ、データモデリングやSQLクエリのロジック、データ駆動アプリケーションのコード設計におけるアンチパターンを紹介し、それらを回避するための実践的な方法を解説します。
内容が大幅に改訂され、新規書き下ろしの章や、各章に「ミニ・アンチパターン」が追加されました。
【目次】
内容説明
リレーショナルデータベースを扱うシステム開発には、様々な場面で陥りやすい失敗(アンチパターン)が存在します。本書では、SQLやデータベース設計を深く掘り下げ、データモデリングやSQLクエリのロジック、データ駆動アプリケーションのコード設計におけるアンチパターンを紹介し、それらを回避するための実践的な方法を解説します。ツリー構造や継承構造のテーブル設計、NULLを正しく扱う手法、ランダムに結果を返すクエリやグループ化を行うクエリのコツ、SQLインジェクションなどのセキュリティリスクからウェブアプリケーションを守る手法など、幅広いトピックを網羅します。第2版では内容を大幅に改訂し、新規書き下ろしの章と15のミニ・アンチパターンが加わりました。
目次
アンチパターンとは何か?
第1部 データベース論理設計のアンチパターン(ジェイウォーク(信号無視)
ナイーブツリー(素朴な木) ほか)
第2部 データベース物理設計のアンチパターン(ラウンディングエラー(丸め誤差)
サーティワンフレーバー(31のフレーバー) ほか)
第3部 クエリのアンチパターン(フィア・オブ・ジ・アンノウン(恐怖のunknown)
アンビギュアスグループ(曖昧なグループ) ほか)
第4部 アプリケーション開発のアンチパターン(リーダブルパスワード(読み取り可能パスワード)
SQLインジェクション ほか)
第5部 ボーナス:外部キーのミニ・アンチパターン(標準SQLにおける外部キーの誤った使い方;MySQLにおける外部キーの誤った使い方)
付録
著者等紹介
Karwin,Bill[KARWIN,BILL] [Karwin,Bill]
ビル・カーウィン。30年以上にわたりソフトウェアエンジニアとして、アプリケーション、ライブラリ、サーバーの開発およびサポートに携わり、また主要なテクノロジー企業に対してコンサルティングを行なってきた。キャリアを通じて、自らの知識を他のプログラマーと共有し、成功と生産性向上を支援してきた。数多くの質問に答えるなかで、最も問題を生じさせやすいSQLの典型的なミスについての独自の見解を得るに至った
和田卓人[ワダタクト]
タワーズ・クエスト株式会社取締役社長、プログラマ、テスト駆動開発者。学生時代にソフトウェア工学を学び、オブジェクト指向分析/設計に傾倒。執筆活動や講演、ハンズオンイベントなどを通じてテスト駆動開発を広めようと努力している
児島修[コジマオサム]
英日翻訳者。訳書に『Lean UX 第3版』『リーンプランディング』『リーン顧客開発』(オライリー・ジャパン)など(本データはこの書籍が刊行された当時に掲載されていたものです)
※書籍に掲載されている著者及び編者、訳者、監修者、イラストレーターなどの紹介情報です。