# ちょうぜつ本_読書py[8] みんなのメモ ###### tags: `ちょうぜつ本` - このメモはWebに公開されています(HackMDチーム) - リンクを知っている人は見られます - HackMDにログインして編集できます ## ちょうぜつ本 - [ちょうぜつソフトウェア設計入門 ――PHPで理解するオブジェクト指向の活用](https://gihyo.jp/book/2022/978-4-297-13234-7) - [サポートページ](https://gihyo.jp/book/2022/978-4-297-13234-7/support)(正誤表) ## お願い事項 (1) 今を楽しもう(録画はしないでね) (2) 本メモは**インターネット上に公開されています。** そのため、文章の丸写し(!=引用)や、書籍を読まずに内容が詳細に分かる表現は行わないようにしましょう。 参考記事: - [Qiita ヘルプ 著作物を引用する際の注意点 ](https://help.qiita.com/ja/articles/about-copylight) - [Qiitaで記事を公開するときに気を付けるべきマナーについて 〜無断でネットや書籍の内容を丸写しするのはやめよう〜 ](https://qiita.com/jnchito/items/215c2d51599eb29adabc) - [文化庁 著作物が自由に使える場合 ](https://www.bunka.go.jp/seisaku/chosakuken/seidokaisetsu/gaiyo/chosakubutsu_jiyu.html) ## このメモについて このメモは ちょうぜつ本_読書py[8] のメモです https://pythonista-books.connpass.com/event/301413/ 読む範囲:8章(8.4) ## 読書会の流れ * 20:00〜20:30 **自由参加**のもくもく会(個人作業) - 事前に読む時間がとれなかった方はここで読んじゃいましょう(ざっとで大丈夫です) - 合わせて、この**HackMD**に話したいことを各自書いてください - ログインすれば書ける設定にしています - ここがわからん、ここはわかった お気軽に書き込んでみてください - HackMDの書き込みに投票し、みんなが気になるところをわいわい読み解いていきます * 20:30〜22:00 読書会本編(みんなでわいわい) * Discordでスライド共有して別途案内します * 20:30開始の本編では、「わたしこれ気になる!」 という話題に `:+1:` と書いて投票します。 * :+1: する上限はありません。 気になる話題に全部 :+1: しちゃいましょう。 ただし1つの話題には1個だけ:+1:でお願いします * 票数が多い話題から話していきます。 ## 以下、もくもく会ワークゾーン 以下は各節で「これってどういうことなんだろう」「ここからこういう気付きがあった」などを書き出すゾーンです。 ### 第8章 デザインパターン _章よりも細かい目次は公開されていないようですが、読書会運営都合により見出し番号だけ記載しています_ 章全体への書き出しはこちらに - Abstrace Factory完全に理解した :+1: - - ### 8-4 Singleton関係は上に - 無理にシングルトンを使う必要がなさそう、というのは分かってきた(学んだからと言って使おう、としてはダメな例になりそうだなと) :+1: - シングルトンに関しては、以前「デザパタ勉強中」という人から質問受けたことがあって、説明したことがある。使える場所は限定的だよって。 - 今メンテナンスしているシステムが、DBをSingletonで実装している。DB接続が確実になるメリットがあるが、テスト的には使いにくい(単体) :+1: :+1: - https://refactoring.guru/design-patterns/singleton/python/example#example-1 :+1: - > Usage examples: A lot of developers consider the Singleton pattern an antipattern. That’s why its usage is on the decline in Python code. - とも書かれており、やっぱり使う機会は少ないようだ - Pythonという言語の設計におけるシングルトン:TrueとかNoneとか:+1: - https://peps.python.org/pep-0008/#programming-recommendations - `is`で比較するものたち - fukabori.fm 48を聞きましたが、「Singletonパターンはいらないです」:+1: :+1: - GoFのデザインパターンの後にdependency injectionが登場し、シングルトンはいらなくなったらしい - DIがあれば、各所でシングルトンにgetInstanceする必要はない - キャッシュでの説明 - シングルトンって便利なんです?(キャッシュが便利なのかの疑問かも) - キャッシュをシングルトンで実装したら、funcAでhogeKeyの値を登録して、funcBでhogeKeyを取り出す。hogeKeyって複数箇所で知らなきゃいけない。これ便利なのかな? - これだけは言える。自動テストとの相性は悪い。 - Singletonを考えたGoFの気持ちは知りたいかも(正直すまんかったなのかな):+1: Abstract Factory関係を下に集めたい - ファクトリ、もう少し突っ込んで考えないと、うまく理解できてる気がしない - https://www.php-fig.org/psr/psr-11/ :+1: :+1: - PythonのPEPでそれっぽいのは流石になさそう・・・?(PEPとはまたPSRは違うベクトルな気もする) - Abstract Factory、インターフェースを挟むことによる依存性の逆転ですね :+1::+1: - 具体がshopに、抽象がbuyerに集まる - 抽象のbuyerがPetShopInterfaceを持つ。buyerはこのインターフェースに依存する - Clean Architectureでも見かける種類の依存性の逆転:+1: - Clean ArchitectureがAbstract Factory使ってると言えるのかはわかんないです。似てるなという気付き - usecaseがインターフェースを持っていて、インターフェースアダプターはこのインターフェースを実装している - それ以外の話題ゾーン - ちょうぜつ本を読むと、t-wadaさんの話もわかるぞ。進研ゼミ的な効果 - P226の挿絵にちょっと笑ってしまった :+1:
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up