親クラスとサブクラスの関係を作るよりも、必要なケースをprotocolとして網羅すればサブクラスになり得る物が必要なものを必要なだけ取捨選択で継承させればいいので不必要なアクセスをしなくて済む

mixi-inc/iOSTraining