最近コードと書く上で使っていきたいなと思ったので勉強。 Duck Typing (ダックタイピング)とは 定義 結論から書くと、「あるオブジェクトがアヒルのように歩き、アヒルのように話すなら、Rubyインタプリタはそのオブジェクトをアヒル」とみなす。この考え方をダックタイピングといいます。 クラス≠型 ダックタイピングの背景には、「クラス≠型」という考え方があります。 Java 等、静的型付け言語では「オブジェクトの型=そのオブジェクトのクラス」という考えが一般的です。しかし、Ruby では(Javaであっても)、オブジェクトの型は、その「オブジェクトが何ができる」かによって定義されます。 説明の文を書いてもいまいちピンとこないと思いますので、コードを混ぜて考えていきます。 Duci Typing を用いたCSV パーサーのテスト CSVParser のテスト 例えば、Rails 内で次の
![Duck Typing - LukeSilvia’s diary](https://cdn-ak-scissors.b.st-hatena.com/image/square/24705aecd907a2b40a7f96590909629ea77df551/height=288;version=1;width=512/https%3A%2F%2Fimages-fe.ssl-images-amazon.com%2Fimages%2FI%2F51wzL1ZPIVL._SL160_.jpg)