新人研修の季節に思うところを書こう。開発作業の中核として活躍するはずの中堅技術者の多くがまともにDB設計できない、という寒々した状況がある。関数従属性も移動平均単価も知らない「設計担当者」がいたりする。私にとってその原因は明らかで、80年代から90年代にかけて注目されたDB設計や業務知識の重要性を、「オブジェクト指向」が怒涛のように押し流してしまったためだ。業務システム設計にとっての「失われた20年」といっていい。 具体的には、JavaやRubyといったオブジェクト指向言語ベースのフレームワーク(未完成な骨格のようなコード群)を用いた開発スタイルが一般的になったためでもある。その結果、新人教育がオブジェクト指向言語の一辺倒になった。同時に、クラス設計を学べばDB設計も学んだことになると勘違いされて、「実装手段から独立したDB設計の枠組み」を学ぶための気運が失われた。IDのような単独主キーだ