今日業界普遍不重視深類別。

主流的「常識」是:類別應該,而不是

主流教學的偏差#

學生常被教導:

  • 設計類別最重要的事是「把大類別拆成小類別」
  • 「任何超過 N 行的方法都應該被拆成多個方法」(N 可低至 10)

這種做法的後果:大量淺類別與淺方法,反而推高整體系統複雜度。

Classitis 是什麼#

「越多類別越好」這種錯誤觀念的極端版本,作者稱之為 classitis(類別過敏)

  • 認為「類別是好東西,所以類別越多越好」
  • 鼓勵每個新類別只承載最少功能
  • 想要更多功能?再開新類別

Classitis 的後果#

看似實際
每個類別都很簡單整體系統複雜度反而提高
「乾淨」的單一職責介面數量爆炸
類別容易理解介面互相累積,總體認知負擔極高

小類別的內含功能不多 → 必須有很多個 → 每個都有自己的介面 → 介面總和形成系統層級的巨大複雜度。

此外,每個類別都帶有樣板程式碼(boilerplate),導致風格冗長囉嗦。