タグ

オブジェクト指向に関するhatatyuのブックマーク (4)

  • 継承はなんでダメ? - まめめも

    「オブジェクト指向の継承を使うな」という主張が広まっているようです。なんでダメになったんでしょうか。 インターネットで見かけた「継承はダメ」という主張をいくつか眺めて、友人と議論しつつ、考えてみました。 「コードが読みにくくなる」 継承があると、メソッド呼び出しが実際にどのメソッド定義を呼び出すのか字面でわからない。 デバッガを使って、親クラスのメソッドに飛んだり、子クラスに飛んだりするのを追いかけないと行けない。 つらい。という主張。 めっちゃわかる。わかるんですが、これは「高度に共通化されたコードは読みにくい」という一般的な側面がかなり大きいような。 たとえば継承の代わりに高階関数を使うと、関数呼び出しがどのクロージャに飛ぶか字面でわからなくなる。 ひどいとコールバック地獄になって何が何やらになります。 継承がことさらにまずい理由を想像すると、すべてのメソッド呼び出しがポリモーフィック

    継承はなんでダメ? - まめめも
  • 「アラン・ケイの」オブジェクト指向とは何だったか?元哲学者のエンジニアがまとめてみた - Qiita

    2020/5/13追記 オブジェクト指向と哲学の関係について書いた記事ではないです。せっかくだしQiitaっぽいタイトルつけようと思ったら結果的に釣りっぽくなってしまった 概要 オブジェクト指向とは何か?ということを真面目に調べていくと、オブジェクト指向には二種類ある、という話に突き当たる。sumim氏のQuora回答などを参照。 Smalltalkの設計者アラン・ケイによる、メッセージング重視のオブジェクト指向 C++の設計者ストラウストラップによる、クラス重視のオブジェクト指向 今回はこの前者のオブジェクト指向について、アラン・ケイの書きものを読んで調べた結果をまとめ、コメントを付す。 参考文献は最後にまとめて出す。参照元は「(AOO)」のように略記で示す。 アラン・ケイのオブジェクト指向 OOPは私にとって、メッセージング、状態処理の局所的な保持・保護と隠蔽、そしてあらゆる事象の徹底

    「アラン・ケイの」オブジェクト指向とは何だったか?元哲学者のエンジニアがまとめてみた - Qiita
  • オブジェクト指向は 人 である ~オブジェクト指向を簡単に理解しよう~ - Qiita

    意味がわからないようなタイトルで始まりましたが、 オブジェクト指向って一体何? って言われた時に自分が説明しているものをまとめてみます。 正直オブジェクト指向という言葉の定義なんて人それぞれなところがあるので、 こういう風に考えている人もいるんだなーぐらいに捉えてもらえると助かります。 オブジェクト = 人である オブジェクトっていうから例えがわかりにくいものになるのかなって思っています。 よくある例え 車 ↓ ハンドル, タイヤ, ボディ, エンジン よくありますよね、こういう例え。 変数は?メソッドは?どういうことになるの? これだとなかなか伝わりにくい気がしています。 オブジェクト = 人 として扱う 車にはもはや例えません。 自分に頼れる知り合いがいたとして、その人に対して、「○○しといてねーお願いします。」 って言うと後はいい塩梅にやってくれます。 そういうことってありますよね。

    オブジェクト指向は 人 である ~オブジェクト指向を簡単に理解しよう~ - Qiita
  • 現場で役立つシステム設計の原則メモ - Qiita

    This article is a Private article. Only a writer and users who know the URL can access it. Please change open range to public in publish setting if you want to share this article with other users. ※この記事は著者の増田さんの了解の上で限定公開させて頂いております。 https://twitter.com/masuda220/status/1215122054795522049?s=20 オブジェクト指向、設計がなぜ必要か = ソフトウェア全体の整理整頓をするため 第1章 小さくまとめてわかりやすくする 変更が大変なプログラムの特徴 メソッドが長い クラスが大きい 引数が多い 関心事を詰め込みすぎ

    現場で役立つシステム設計の原則メモ - Qiita
  • 1