#author("2023-11-09T13:19:03+09:00","default:irrp","irrp") →詳細設計 <アスペクト指向(AOP)についてもこちら #contents *一般 [#lefc6ff8] -[[マリオで学ぶSOLID原則>https://zenn.dev/keiichiro/articles/9397379ab638b1]] 2023.10 -[[インターフェース、MixIn、トレイトについて - なんか考えてることとか>https://opaupafz2.hatenablog.com/entry/2022/01/23/131759]] 2022 -[[パッケージ原則とクラス原則の違いは何なのか: プログラマの思索>https://forza.cocolog-nifty.com/blog/2023/10/post-976c19.html]] 2023.10 -[[これだけは知っておきたいクラス設計の基礎知識 - Speaker Deck>https://speakerdeck.com/masuda220/koredakehazhi-tuteokitaikurasushe-ji-noji-chu-zhi-shi]] 2023.6 -[[オブジェクト指向はコードを複雑に読みにくくする - きしだのHatena>https://nowokay.hatenablog.com/entry/2023/02/24/213551]] 2023.6 -[[アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか? - Speaker Deck>https://speakerdeck.com/tanakahisateru/andokiyumentetudo-tiyouzetusohutouea-she-ji-ru-men-obuziekutozhi-xiang-niding-yi-hanai-noka]] 2023.3 --[[【書籍】ちょうぜつソフトウェア設計入門――PHPで理解するオブジェクト指向の活用>https://amzn.to/3lBa8mO]] -[[オブジェクト指向はコードを複雑に読みにくくする - きしだのHatena>https://nowokay.hatenablog.com/entry/2023/02/24/213551]] 2023.2 --[[オブジェクト指向は禁止するべき - きしだのHatena>https://nowokay.hatenablog.com/entry/20140718/1405691217]] 2014 -[[オブジェクト指向のメリット・デメリット - Qiita>https://qiita.com/soshi_u/items/180f913ddb63f28824ac]] 2022.12 --メリット ---ミスを防げる ---表現力があがる ---要件の理解が進む ---何ができないのか一目でわかる ---コードに愛着が持てる --デメリット ---記述量が多くなる ---読むときに面倒、または複雑になる -[[「オブジェクト指向神話からの脱却」という特集をWEB+DB PRESSで書きました - きしだのHatena>https://nowokay.hatenablog.com/entry/2022/12/08/153543]] 2022.12 -[[オブジェクト指向は継承で多態するプログラミング - きしだのHatena>https://nowokay.hatenablog.com/entry/2022/08/25/152904]] 2022.8 -[[オブジェクト指向プログラミングは終わった - Qiita>https://qiita.com/saitofjp/items/b3508fcd755d0d5cc090]] 2022.7 --[[オブジェクト指向プログラミングは終わった カプセル化が悪い(感想戦) - Qiita>https://qiita.com/saitofjp/items/7ab7b7fec9da0ca363fa]] 2022.8 -[[ダックタイピング、あるいは私の頭の中のインターフェース - WonderPlanet Developers’ Blog>https://developers.wonderpla.net/entry/2022/03/24/110000]] 2022.3 -[[脱オブジェクト指向初心者! ~「クリーンアーキテクチャ」を読む前に知っておきたい知識 ~ - WonderPlanet Developers’ Blog>https://developers.wonderpla.net/entry/2022/03/17/110022]] 2022.3 -[[オブジェクト指向はすでに粒度が時代にあっていない>https://nowokay.hatenablog.com/entry/2021/09/25/042831]] 2021.9 --ソフトウェアの記述をまとめるという視点では主にステートレスな関数を分類できれば充分で、データと振る舞いをまとめたオブジェクトというのは大きすぎる、システムを分割して管理しやすくするという視点ではオブジェクトというのはライフサイクルやリソース管理の視点が足りず小さすぎる、ということで、オブジェクト指向の粒度でのソフトウェア管理は出番がなくなっている -[[「アラン・ケイの」オブジェクト指向とは何だったか?元哲学者のエンジニアがまとめてみた>https://qiita.com/ukyo-su/items/8c861f114809a96d1378]] 2020.5 -[[オブジェクト指向プログラミング -- 1兆ドル規模の大失敗>https://okuranagaimo.blogspot.com/2019/07/1.html]] 2019.7 -[[オブジェクト指向がn%理解できる記事まとめ>https://qiita.com/raccy/items/74a6f8b98881726ff82d]] 2018.10 -[[実はオブジェクト指向ってしっくりこないんです!>http://el.jibun.atmarkit.co.jp/minagawa/2010/04/post-ebc4.html]] -[[「嫌われるオブジェクト指向」のパターン>http://d.hatena.ne.jp/JavaBlack/20070805/p2]] -[[オブジェクト指向の憂鬱 設計編>http://itpro.nikkeibp.co.jp/article/COLUMN/20081117/319337/]] 2008.11.18 --オブジェクト指向の概念が出てから相当に時間がたっているのに,なぜこうした状況がまかり通っているのだろうか。その理由の一つとして,設計の難しさがあるのではないかと思う。私はものごとが難しいというのには2種類あると考えている。知識として知っていないから難しいものと,感覚として持っていないから難しいものである。オブジェクト指向は後者に属する。 *UML [#h68c8bd0] -[[【改訂版】初歩のUML>http://www.atmarkit.co.jp/im/carc/serial/renew_uml01/renew_uml01.html]] -[[クラス図@Wikipedia>http://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%A9%E3%82%B9%E5%9B%B3]] -[[ゼロから学べる SysML入門【実践編】(1)>http://monoist.atmarkit.co.jp/fembedded/articles/challengesysml/01/challengesysml_01a.html]] 2010.2.8 -[[OOP and UML:http://www.codeproject.com/cpp/oopuml.asp]] *デザインパターン [#b3d8bd1c] -[[デザインパターン Observerパターン - Qiita>https://qiita.com/AsahinaKei/items/a3e93e540ad72c11f891]] 2023.10 -[[GoFの次に覚えたいデザインパターン 〜Type Objectパターン〜 - RAKUS Developers Blog | ラクス エンジニアブログ>https://tech-blog.rakus.co.jp/entry/20230725/typeobject]] 2023.7 -[[【Unity】Unityで学ぶデザインパターン11: Flyweight パターン【デザパタ】 - Qiita>https://qiita.com/Cova8bitdot/items/7f1f1f04b46ebaf43c5e]] 2023.6 --[[【Unity】Unityで学ぶデザインパターン21: Strategy パターン【デザパタ】 - Qiita>https://qiita.com/Cova8bitdot/items/28dd773075cf6e9fefee]] 2023.7 -[[オブジェクト指向を5年間理解できなかった人間がオブジェクト指向を説明する(第4回) - 朝日ネット 技術者ブログ>https://techblog.asahi-net.co.jp/entry/2023/03/14/143131]] 2023.3 --Template Method, Factory Method, Bridge, Proxy, Composite, Interpreter, Decorator -[[デザインパターン>https://refactoring.guru/ja/design-patterns]] 2023.2 -[[Design Patterns in Python: Strategy Pattern | by Okan Yenigün | Jul, 2022 | Level Up Coding>https://levelup.gitconnected.com/design-patterns-in-python-strategy-pattern-2189c540756d]] 2022.7 -[[7 Must Know Software Design Patterns | by Ivan Stoev | May, 2022 | Level Up Coding>https://levelup.gitconnected.com/7-must-know-software-design-patterns-3ef883ddb53e]] 2022.5 --Sigleton --Factory Method --Observer --Builder --Adapter --Mediator --Proxy -[[10年前はGoFのデザインパターン本を読んで何やらわかった気になっていました>https://qiita.com/e99h2121/items/91d5380932bcd2951d8d]] 2021.9 -[[GoF23パターンの解説とサンプル>http://www.techscore.com/tech/DesignPattern/index.html/]] 2017.5 --[[Decorator パターン>https://www.techscore.com/tech/DesignPattern/Decorator.html/]] ---基本クラスを直接継承せずメンバに持ち、派生クラスで基本クラスの振る舞いを装飾することで実行時に振る舞いの組み合わせを作る。 -[[GoFの23のデザインパターンを,Javaで活用するための一覧表 (パターンごとの要約コメント付き)>http://d.hatena.ne.jp/language_and_engineering/20120330/p1]] 2012.3.30 -[[Design Your Soccer Engine, and Learn How To Apply Design Patterns (Observer, Decorator, Strategy and Builder Patterns) - Part I and II:http://www.codeproject.com/useritems/applyingpatterns.asp]] -[[.NETで始めるデザインパターン:http://www.atmarkit.co.jp/fdotnet/designptn/index/index.html]]