実はID派でしたという告白

では、なぜXEADでは定義要素の識別子の値を隠しているかというと、テーブルIDとかフィールドIDとか機能IDの値が、設計過程でコロコロ変わるからだ。筆者などは、設計初期にはそれらはブランクのままほっておくことも多い。そんなものをテーブル関連の基礎とするわけにはいかない。

http://watanabek.cocolog-nifty.com/blog/2007/02/post_de7f.html

渡辺先生もID方式の有効性に関しては決して否定的ではないようだ。とすると、結局「常にID」か「必要に応じてID」かという違いになるのかな。だとすると、コードの普遍性がくずれやすいリソースにはIDを使えというところまでは同意が得られるのではないかなぁ。