# ミノ駆動本_読書py[2] みんなのメモ ###### tags: `ミノ駆動本` - このメモはWebに公開されています(HackMDチーム) - リンクを知っている人は見られます - HackMDにログインして編集できます ## このメモについて このメモは ミノ駆動本_読書py[2] のメモです https://pythonista-books.connpass.com/event/251790/ https://twitter.com/MinoDriven/status/1541334416622256130 > 【お願い】 拙著『良いコード/悪いコードで学ぶ設計入門』に関する情報発信について。 ブログ等で発信の際は、引用の範囲を超え、著作権侵害となる場合は勿論のこと、拙著の詳細内容が分かるような表現での公開はお控え頂けると助かります。 ご感想や拙著に基づく試行錯誤は歓迎です。 #ミノ駆動本 > 拙著引用の際は、Qiitaさんの『著作物を引用する際の注意点』が参考になります。適切な引用のもと、情報発信していただけると嬉しいです。https://help.qiita.com/ja/articles/about-copylight #ミノ駆動本 とのことなので勉強会そのもので詳細内容がわかるような記述はしないように気をつけていきましょう。 読む範囲:6章(6.2 switch文の重複) 今回は分量が多いので6.2に絞って実施いたします。 ミノ駆動本のサポートページより、Javaのサンプルコードが見られます。 https://gihyo.jp/book/2022/978-4-297-12783-1/support ## 読書会の流れ * 20:00〜20:30 自由参加のもくもく会(個人作業) - 事前に読む時間がとれなかった方はここで読んじゃいましょう(ざっとで大丈夫です) - 合わせて、この**HackMD**に話したいことを各自書いてください - ログインすれば書ける設定にしています - ここがわからん、ここはわかった お気軽に書き込んでみてください - HackMDの書き込みに投票し、みんなが気になるところをわいわい読み解いていきます * 20:30〜22:00 読書会本編(みんなでわいわい) * Discordでスライド共有して別途案内します * 20時30分の本編では、「わたしこれ気になる!」という話題に `:+1:` と書いて投票します。 * :+1: する上限はありません。気になる話題に全部 :+1: しちゃいましょう。ただし1つの話題には1個だけ:+1:でお願いします * 票数が多い話題から話していきます。 ## 以下、もくもく会ワークゾーン ### サンプル実装 単一責任選択の原則 https://github.com/ftnext/exile-of-the-wicked-py/blob/33273ca12170a8942a38bd8ba054b3a4f5a12001/chapter6/one_place_fork.py interfaceを使った条件分岐 (WIP) https://github.com/ftnext/exile-of-the-wicked-py/blob/main/chapter6/fork_by_interface.py ### 感想、気付き - (ミノ駆動本に直接ではないけど)if, elifとmatchの決定的な違いってなんだろう? :+1::+1::+1: - ちょっとスッキリするかな?という感覚はあれど、なぜ3.10で導入されたのか?っていう理由がちょっと気になって調べつつ... - > Patterns and classes¶ If you are using classes to structure your data, you can use as a pattern the class name followed by an argument list resembling a constructor. This pattern has the ability to capture class attributes into variables: とか?(以下Google翻訳にて日本語訳) - > パターンとクラス クラスを使用してデータを構造化する場合は、クラス名の後にコンストラクターに似た引数リストをパターンとして使用できます。このパターンには、クラス属性を変数に取り込む機能があります。 https://docs.python.org/3/whatsnew/3.10.html#pep-634-structural-pattern-matching - - - - 以下は各節で「これってどういうことなんだろう」「ここからこういう気付きがあった」などを書き出すゾーンです。 6章は分量が多いため、6.2に絞らせていただくことにしました。 ### 6 条件分岐 -迷宮化した分岐処理を解きほぐす技法- #### 6.2 switch文の重複 ##### 6.2.1 - - - ##### 6.2.2 - - - ##### 6.2.3 - 知らず知らずの間にこのパターン踏んじゃってそうな気がした:+1: - 初めて作ったゲームでこれやらかしたなぁと思いだしました…。 - ##### 6.2.4 - 身の回り(?) で同じようなロジックが増えそうなもの、何があるかなぁとぼんやり考えてみている:+1: - ex 例えば職業クラスとか・・? うーん、いまいちな例かもしれない・・・ 支払いとか? 現金、代引、クレジットカード、銀行振込、ネット支払、書留etc... - - ##### 6.2.5 - - - ##### 6.2.6 - - - ##### 6.2.7 - if文を使わずに条件分岐できる。ミノ駆動本で一番の学びです(現時点) - すごい、と思いつつどう実装するかが全然わかっていない・・・:+1::+1: - これこそ、Pythonでどう実装するか?の話かな。コードそのものがテストになっているようなイメージがする。 - interfaceはJavaの概念:+1: - PythonではabcモジュールのABC? (Abstract Base Class):+1::+1: - Python3.8から追加されたtyping.Protocol:+1: - - ##### Column クソコード動画「switch文」 クソコード動画は本編で見ます:+1: https://twitter.com/minodriven/status/1228896043435094016 その時のスライド(2020) https://speakerdeck.com/minodriven/kusokododong-hua-switchwen-jie-shuo:+1::+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