開発者のためのワーストプラクティス:Ask TomがLiveイベントとして上陸

杉山貴章(オングス)
2010-02-10 15:51:02
  • このエントリーをはてなブックマークに追加

すべて問題なく事が進むと思い込んでいる

 データベースやアプリケーションに関して発生し得る問題を理解していながら、実際にそれが自分の身に起こるとは考えておらず、対処がおろそかになっている。障害は起こるものと考え、正しく対処する術を持っておくべき。

 それと同時に「Unknown Error」も必ず起こるものと考え、それを無視してはいけない。ただエラーをキャッチしてメッセージを表示するだけでなく、アプリケーションの中にもっと堅固なエラーハンドリングの仕組みを持たせるべき。これはエラーが起こってから考えるのではなくて、コードを書く前に考えておかなければならない。

セキュリティについて

 多くの技術者は、Oracleはセキュアであると考えている。確かにOracleはセキュアだが、それ故に開発者はアプリケーションで何の対処を施さなくてもセキュアにできるだろうと思い込み、セキュリティ対策を後回しにしてUIの作り込みを優先してしまう。

DBA(データベース管理者)と開発者が敵同士だと思っている

 DBAは開発者からデータを守ることが一番重要な仕事だと思い込んでしまっている。本来であればDBAの役割はデータベースについて熟知していることであって、開発者に対してデータベースのことを教えるのも仕事のひとつであるべきなのに。

 一方、開発者側でもDBAを敵視して、何か問題が発生した場合でもDBAに頼らないやり方で解決しようとするケースが多い。その結果、SQLを書けばシンプルにできるような場面でも余分なコードを書いてしまい、バグを増やすことになる。

Kyte氏によって指摘されたDBAと開発者の誤った関係 Kyte氏によって指摘されたDBAと開発者の誤った関係

 これは本来あるべき姿とは全く逆の関係だ。本来であれば、DBAと開発者はお互いに協力して一緒に開発していくべきなのだから。

「ベスト」プラクティスとは何か

 ベストプラクティスというものは、いつ適用すべきか、いつ適用すべきでないかが明確になっていなければならない。「ベスト」と名がついていても、適切でない状況で実施すれば逆に悲惨な結果になってしまうともあり得る。ベストプラクティスといっても適用する際には常に慎重にならなければならない。

 最後にKyte氏は「大事なのは常に疑問を持つことです。自分で考えて代替案を出しましょう。権威に対して疑問をもつことも躊躇してはいけません。もちろん私に対してもです。疑問があったらためらわずにどんどん質問してください」と語り、セッションを締めくくった。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]