これは「オブジェクト指向」がよくわかってない人の書いたポエムである。 そういうのが嫌いな人はお帰りください。 はじめに リンクは貼らないが「オブジェクト指向の本質とは現実を正しく捉えること」と書かれている記事(以下、元記事)がバズった。 私は正直「オブジェクト指向」の何たるかを理解しているとは言い難い。 しかし、そんな私でも元記事がいくつかの点でおかしい、もっと厳しくいうと開発現場に混乱をもたらす可能性を持っていることは理解できる。そこでこの記事では「オブジェクト指向とは〇〇である」という言及は行わずに、元記事の問題点を指摘するに留める。 長方形と正方形の例 オブジェクト指向プログラミングと現実世界の話というとBobおじさんが『アジャイルソフトウェア開発の奥義』に書いた正方形と長方形の話が有名だ。 話は簡単だ。「正方形クラスは長方形クラスを継承するべきか?」というものだ。 少しだけ詳しく見
![「オブジェクト指向とは、現実世界を正しく捉えること」という理解はデメリットのほうが大きい](https://cdn-ak-scissors.b.st-hatena.com/image/square/66418213d4afa016e730f280da1091699041d4f5/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUUzJTgwJThDJUUzJTgyJUFBJUUzJTgzJTk2JUUzJTgyJUI4JUUzJTgyJUE3JUUzJTgyJUFGJUUzJTgzJTg4JUU2JThDJTg3JUU1JTkwJTkxJUUzJTgxJUE4JUUzJTgxJUFGJUUzJTgwJTgxJUU3JThGJUJFJUU1JUFFJTlGJUU0JUI4JTk2JUU3JTk1JThDJUUzJTgyJTkyJUU2JUFEJUEzJUUzJTgxJTk3JUUzJTgxJThGJUU2JThEJTg5JUUzJTgxJTg4JUUzJTgyJThCJUUzJTgxJTkzJUUzJTgxJUE4JUUzJTgwJThEJUUzJTgxJUE4JUUzJTgxJTg0JUUzJTgxJTg2JUU3JTkwJTg2JUU4JUE3JUEzJUUzJTgxJUFGJUUzJTgzJTg3JUUzJTgzJUExJUUzJTgzJUFBJUUzJTgzJTgzJUUzJTgzJTg4JUUzJTgxJUFFJUUzJTgxJUJCJUUzJTgxJTg2JUUzJTgxJThDJUU1JUE0JUE3JUUzJTgxJThEJUUzJTgxJTg0JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0zNmNiNDRjNTRlNjgwY2MxM2Q4ZmQ0YzAxZmQyNTI3MA%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbWF1ZWtpJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1mNzE5YTRmNDE3ZWNiYjQ1YjhmMWI4ODVjNTdlMmQzYQ%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D80773917f39c47d4baa9562d0570a70c)