タグ

ブックマーク / wiki.hacklife.net (1)

  • Concepts + Principles - プログラミングの原則 - DuckTyping

    「オブジェクト指向入門」によるとクラスは二つの見方ができる。 型としてのクラス モジュールとしてのクラス DuckTyping におけるクラスは「モジュールとしてのクラス」であり、モジュールとは「外部に提供されるサービスの集合」である。そして、サービスとは「機能の意味・役割」だ。 つまり、DuckTyping はクラスの提供するサービスに注目して設計することで、データ構造・型の変化へ柔軟に対応する設計方針である。 言語の仕組みとしては、サービスを実現する*1インスタンスを実行時に決定する動的束縛(DynamicBinding)によって支えられている。 DuckTypingはオブジェクト指向の概念の発明者は誰ですか?で解説されている「手続きによる抽象化手法」そのものである。 クラスはインターフェイスから知るべきである。 インターフェイスはクラスが提供するサービスを示し、実現部分からは独立して

  • 1