ソフトウェア開発メモ

日々のソフトウェア設計、実装で考えている、気づいた事を書いています。それが真実か否かは保証しません。悪しからず。

プロトコルについて

クラスを独自に分類してみました。

分類例

  • AVVideoCompositing:責務を表す?
  • UITableViewDataSource:ロール、人工品?
  • UITableViewDelegate:ロール、人工品?
  • NSTextLayoutOrientationProvider:責務を表す?
  • NSURLAuthenticationChallengeSender:責務を表す?
  • SKPaymentTransactionObserver:ロール?
  • EAGLDrawable:?
  • MPMediaPlayback:人工品?
  • NSObject:抽象インタフェース

    総括

    〜ingのプロトコルは一つの責務そのままを表すようです。ロール系のプロトコル複数の責務を兼務する傾向があるのかな?。これはオブジェクトデザインの「ロールは、責務の集合であり、交換して使うことができる」のままですね。