スタイルシートの記述の仕方

僕はよくWebデザイナーと呼ばれる人の作ったWebサイトのソースを覗いたりしている。その中で、よく「.b1」とか「.red」とかのclassをテーブルのセルやdivやspan等に指定しているのを見つける。
例えば、スタイルシートには

.b1 { font-size: 9px; color: #FF0000;}
.red  { color: #FF0000;}
}

こんな感じのclassばっかりで書いたりしている。んでHTMLの各要素にclassをつけている。それってメチャクチャ効率が悪いと思う。
なぜならちょっとした変更に際して変更する作業箇所がHTMLファイル側に増えるし、似たようなclassの管理が大変なのではないかと思うのだけどいかがでしょうか?
こんな記述の仕方をする理由は以下のようなことかもしれないしそうじゃないかもしれない。

  1. illustratorPhotoshopでデザイン
  2. ドリームウィーバーとかでテーブルでレイアウト
  3. 一つ一つのパーツをデザインしたとおりになるように気付いたところからclass指定でCSSを記述。

テーブルでレイアウトしているからfontや色の指定が多くなる。