---
# System prepended metadata

title: README
tags: [オブジェクト指向設計実践ガイド読書会]

---

README
===
###### tags: `オブジェクト指向設計実践ガイド読書会`

# 概要
『オブジェクト指向設計実践ガイド ～Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方』(Sandi Metz 著, 髙山泰基 訳)を読む会

- 技術評論社, pdf版あり
    - https://gihyo.jp/book/2016/978-4-7741-8361-9
- Amazon
    - https://www.amazon.co.jp/dp/B01L8SEVYI

# 会場
https://discord.com/channels/432531367427964929/898843794101911622

# 開始条件
- 開始予定時刻+10分程度までに、アクティブな参加者が3人以上集まったら実施
- アクティブな参加者が3人未満だった場合はスキップ
- 「アクティブな参加者」= ボイス or チャットで会話に参加できる人数
    - 「ログを読むだけ」「会話を聞くだけ」の参加者は、「アクティブな参加者」にはカウントしない

# 本編（全53回）
| 回 | 実施日 | URL |
| --- | --- | --- |
| 1 | 2021/10/23 | https://hackmd.io/2_uknORUTrWIsYJDN_E2TA |
| 2 | 2021/10/30 | https://hackmd.io/YlNfjFw3SpSpdt5V_Yoa4g |
| 3 | 2021/11/06 | https://hackmd.io/W_hfv07DQsa_KNdCdbafnQ |
| 4 | 2021/11/13 | https://hackmd.io/THQ4sb3lQTyZG5EntlNwzw |
| 5 | 2021/11/27 | https://hackmd.io/l7kpfovCRC2utinRXmjlQw |
| 6 | 2021/12/04 | https://hackmd.io/SPUH_HwCQe2o2yzPICiEcg |
| 7 | 2021/12/11 | https://hackmd.io/CkWzrBAiSiCp0UkNkeMTxQ |
| 8 | 2021/12/18 | https://hackmd.io/DF4GuAPyQ4SvBMeHpuMgSw |
| 9 | 2022/01/08 | https://hackmd.io/oR6KeVYUQhCEwPMo5K42kg |
| 10 | 2022/01/15 | https://hackmd.io/-lWzUpXsSO-Lxq-mGilj8w |
| 11 | 2022/01/22 | https://hackmd.io/S7Q2WvbsRPed205B4cyoNw |
| 12 | 2022/01/29 | https://hackmd.io/fCTc4fogRtuPJCmtguHdVA |
| 13 | 2022/02/05 | https://hackmd.io/vI61o_VeQievSy5UYUAYYg |
| 14 | 2022/02/12 | https://hackmd.io/U0ukOR7xRa--e7SWpi6BMw |
| 15 | 2022/02/19 | https://hackmd.io/eQxbqcI4Sx-rb9gTyaF_RA |
| 16 | 2022/03/05 | https://hackmd.io/uhDBLO_vT4OPwQMHZZ_raQ?edit |
| 17 | 2022/03/19 | https://hackmd.io/RVEhADLuQDqbpWWNQp-fZA?both |
| 18 | 2022/04/02 | https://hackmd.io/y_ozhw8zRL69oWTYTvEwcA?both |
| 19 | 2022/04/09 | https://hackmd.io/fHnUrcSUSbatt3nqrfs1hQ |
| 20 | 2022/04/23 | https://hackmd.io/_b7j_7zKRESLR2_bW7dtPA?view |
| 21 | 2022/04/30 | https://hackmd.io/eGax1csKS_q_XECobSHr9w?view |
| 22 | 2022/05/07 | https://hackmd.io/vdwOyT2LRxyHnBnZG3_1Vg |
| 23 | 2022/05/14 | https://hackmd.io/ETWDReFCTlOErRpa4RiV-Q |
| 24 | 2022/05/21 | https://hackmd.io/Jbrhou_fThGptZs_LOgd0w |
| 25 | 2022/06/04 | https://hackmd.io/YbykAr-aSq2UfZokyRTkZw?edit= |
| 26 | 2022/06/11 | https://hackmd.io/cdgSb3eWRY-hfjOqb7l5eA?both |
| 27 | 2022/06/18 | https://hackmd.io/0plaLNb5RXGHOpUqMI6Giw?both |
| 28 | 2022/06/25 | https://hackmd.io/KPiw-R6ETzuroGvA9SL4Cw?both |
| 29 | 2022/07/16 | https://hackmd.io/hZwyX8ZLQdmOj8KF6Np5ig?edit |
| 30 | 2022/07/23 | https://hackmd.io/ADAeV3VGRCmWcE7MOTEACg?both |
| 31 | 2022/07/30 | https://hackmd.io/nHAEopfGRJmeLFORhdKi-w?edit |
| 32 | 2022/08/13 | https://hackmd.io/b6gNGjQZQ4eMWvgZOyrmLQ?view |
| 33 | 2022/08/27 | https://hackmd.io/xuE7CWBbTWSwoIYi8r6ZRg?edit |
| 34 | 2022/09/03 | https://hackmd.io/y8SX2fQPSxmH6p0mILXA2Q?edit |
| 35 | 2022/09/17 | https://hackmd.io/2YTuvTxdRoCvDbMh9vv8Sw?edit |
| 36 | 2022/10/08 | https://hackmd.io/GxNDVM3DQh-JK2CVOBaMxw?both |
| 37 | 2022/10/22 | https://hackmd.io/rxY1uFNYQWyDGsPUQ9jH2Q?both |
| 38 | 2022/10/29 | https://hackmd.io/b_8tlblURT2gYN5O70OTKg?edit |
| 39 | 2022/11/05 | https://hackmd.io/tfVMl52_QJ2WczF7zFTtSQ?edit |
| 40 | 2022/11/12 | https://hackmd.io/xAISChqMQVqwR2y7J6iG1g?edit |
| 41 | 2022/11/19 | https://hackmd.io/vHUHir2lS1-BDuwreaAyBw?edit |
| 42 | 2022/12/03 | https://hackmd.io/gbQ3_3gcQO-3cGbjLOe21A?edit |
| 43 | 2022/12/10 | https://hackmd.io/ZcKSYMpeSYKoTTTWejvk5A?edit |
| 44 | 2023/01/14 | https://hackmd.io/14F-75o6TsubsXhrlF27qw?edit |
| 45 | 2023/01/28 | https://hackmd.io/VT6QJm4ZQd6t3mLT8Cr2jg?edit |
| 46 | 2023/02/04 | https://hackmd.io/ReWH-TMHRP6JeF9SIlHK1w?edit |
| 47 | 2023/02/11 | https://hackmd.io/UzloqiPhQs-SJDiXbAOCFA?edit |
| 48 | 2023/02/25 | https://hackmd.io/qvch_AOyT2Gjato25J0mUw?edit |
| 49 | 2023/03/04 | https://hackmd.io/qWjp_5R8ToSwrPokbBzg0A?edit |
| 50 | 2023/03/11 | https://hackmd.io/vpGCpaDDRYqJRN0aHMwbqA?both |
| 51 | 2023/03/18 | https://hackmd.io/RqpZ9hH4Shml66iGjT--Qw?edit |
| 52 | 2023/04/01 | https://hackmd.io/xmIppUmCSlSvskunwrb5Ew?edit |
| 53 | 2023/04/29 | 最終回 https://hackmd.io/2jfC07ElRDS7YcLZzJ9DHQ?edit |

# テンプレート
https://hackmd.io/wO06HJ2XRamPYEeQ75BPMg?both

# 各パートの説明(タイムキーパー用テンプレート兼用)
https://hackmd.io/E0HZBN9OS9GBAtnsYXjDsw#%E6%AC%A1%E5%9B%9E%E4%BB%A5%E9%99%8D%E3%81%AE%E8%AA%B2%E9%A1%8C

# タイマー
https://github.com/AutumnSky1010/OkawariBot

# 進行フロー
![進行フロー](https://i.imgur.com/cUW9Y6z.png)


<details>
    <summary>src</summary>
    
```puml
    @startuml OOD読書会 当日の進行フロー

(*) --> "読書会開催コール"

--> "タイムキーパー募集"

partition 読書パート {
    --> "10分タイマーをセット" as SetReadTimer
    --> "1節読む" as Read
    ----> if ":okawari: or :goti" as b1 then
        ->[:okawawri: > 0] "5分タイマーをセット" as addReadTime
        -u-> Read
    else
}

partition 投票パート {
        -->[:okawari: == 0] "トピックに投票" as Vote
    endif

    --> if ":okawari: or :goti" as b2 then
        ->[:okawawri: > 0] "2分タイマーをセット"
        -u-> Vote
    else
}
partition トークパート {
        --->[:goti: > :okawari:] "トピックについて話す" as Talk
    endif

    ---> if ":okawari: or :goti" as b3 then
        ->[:okawari: > 0] "5分タイマーをセット" as addTalkTime
        -u-> Talk
    else
    endif

    --->[:okawari: == 0] if "取り上げたいトピックが" as b4 then
        ->[残っている] "トピックを選ぶ"
        -u-> Talk
    else
    endif
}

-->[残っていない] if "現在時刻が" then
    --u-->[終了時刻より前] SetReadTimer
else
endif

-->[終了時刻付近 or 以降] "ふりかえり"
--> 読書会終了コール

partition 運営パート {
    --> 次回README作成
    --> 課題解消
}
--> (*)

@enduml
```
    
</details>

# 課題
https://hackmd.io/wfDfaf4nRQuPG1BYtcy_jA

# 募集要項
https://hackmd.io/YeGYCsUuSeK36qyQnjW3QQ

# テストプレイ
- [第1回](https://hackmd.io/UrIzL1_bSTqySquwRZ5KbA)
- [第2回](https://hackmd.io/svT8_ygNTfGoNWgszHPxYQ)
- [第3回](https://hackmd.io/d5zQNkY2Q0-UT2ngfxA7PQ)
