1
+ .. _Clean Architecture : https://asciidwango.jp/post/176293765750/clean-architecture
2
+ .. _Clean Craftsmanship : https://asciidwango.jp/post/693992928727760896/clean-craftsmanship
3
+ .. _ミノ駆動本 : https://gihyo.jp/book/2022/978-4-297-12783-1
4
+ .. _ちょうぜつ本 : https://gihyo.jp/book/2022/978-4-297-13234-7
5
+ .. _増田本 : https://gihyo.jp/book/2017/978-4-7741-9087-7
6
+ .. _達人プログラマー(第2版) : https://www.ohmsha.co.jp/book/9784274226298/
7
+
1
8
======================================================================
2
9
ソフトウェアを作りたかった私へ
3
10
======================================================================
18
25
お前、誰よ(自己紹介)
19
26
======================================================================
20
27
21
- * nikkie / :fab: ` twitter ` ` @ftnext <https://twitter.com/ ftnext >`__ / :fab: ` github ` ` @ftnext < https://github. com/ftnext >`__
28
+ * nikkie / 毎日 ` ブログ <https://nikkie- ftnext.hatenablog. com/ >`__ 執筆、490日突破
22
29
* ソフトウェア開発 2016年〜(歴8年)
23
- * 2019年〜 株式会社ユーザベースのデータサイエンティスト 。 **Python ** ・機械学習(`We're hiring! <https://hrmos.co/pages/uzabase/jobs/1829077236709650481 >`__)
30
+ * 2019年〜 データサイエンティスト 。 **Python ** ・機械学習・ソフトウェアエンジニアリング (`We're hiring! <https://hrmos.co/pages/uzabase/jobs/1829077236709650481 >`__)
24
31
25
- .. TODO ロゴのURLの確認
32
+ .. image :: ../_static/uzabase-white-logo.png
26
33
27
34
Pythonでこんな開発しています
28
35
--------------------------------------------------
29
36
30
- * バッチ処理(機械学習のパイプライン。ファイルを入力し、ファイルに出力する)
31
- * 自動化処理
32
- * CLI
33
- * ちょっとしたWebアプリケーション(サーバサイドのみ)
34
- * テスト駆動開発
35
-
36
- コミュニティ活動(一部抜粋)
37
- --------------------------------------------------
37
+ * ファイルを入力し、別のファイルに出力する処理(を組合せた、機械学習パイプライン)
38
+ * CLI(小さいライブラリを個人開発)
39
+ * **テストコード ** 書いてます(リファクタリング ゴリゴリ)
40
+ * 経験が薄いもの:がっつりWebアプリ開発、DDD
38
41
39
- * Python使いの観点から、アウトプット中心の読書会 **読書py ** を共同主催
40
- * シーズン1 ミノ駆動本
41
- * シーズン2 ちょうぜつ本(次回最終回予定)
42
+ .. ソフトウェアを書きたい!もこれが前提にある
42
43
43
44
.. include :: introduction.rst.txt
44
45
@@ -55,7 +56,7 @@ Pythonでこんな開発しています
55
56
まとめ🌯 得た指針
56
57
======================================================================
57
58
58
- * 小さい部品を組合せる(シンプル。LEGOのように)
59
+ * ** 小さい部品を組合せる ** (シンプル。LEGOのように)
59
60
* クラスでデータとメソッドをまとめる
60
61
* 👉関数やクラスを小さい部品として使っていく
61
62
@@ -88,31 +89,70 @@ Pythonでこんな開発しています
88
89
まとめ🌯 難所からの学び
89
90
======================================================================
90
91
91
- * インターフェースで使い方を小さく示す
92
- * 具象ではなく、インターフェースに依存する(依存性注入からの発展)
93
- * 継承は最後の選択肢
92
+ * インターフェースで ** 使い方 ** を小さく示す
93
+ * 具象ではなく、インターフェースに依存する(** 依存性注入からの発展 ** )
94
+ * 継承は最後の選択肢(インターフェースや委譲を使う)
94
95
95
- NEXT 変更しやすいコードをチームで書く
96
+ NEXT 変更しやすいコードを ** チーム ** で書く
96
97
======================================================================
97
98
98
- 次のわからん殺し
99
+ 次のわからん殺し(今の思考のダンプです)
99
100
100
101
コードはチームで書くもの
101
102
--------------------------------------------------
102
103
103
- ソフトウェア開発はチームスポーツである(『Team Geek』p.3)
104
+ ソフトウェア開発はチームスポーツである(『`Team Geek <https://www.oreilly.co.jp/books/9784873116303/ >`__』p.3)
105
+
106
+ チームで、変更しやすいコードを書きたい!🔥
107
+ --------------------------------------------------
104
108
105
- .. TODO 正しい使い方を簡単に
109
+ * *常時ペアプロ * という環境
110
+ * 私は変更しやすいコードを書きたい!で、ソフトウェアについて知った部分が増えた。チームにも還元できる
111
+ * nikkieがいなくなっても、ソフトウェアが書け、さらによりよくしていけるチーム、どうやる??
106
112
107
- まとめ
113
+ easyが必要な可能性?
114
+ --------------------------------------------------
115
+
116
+ * 小さな部品、その組合せはまずい(操作ミス)という事象
117
+ * 小さな部品を使いやすく組合せて提供する?
118
+ * 「`正しい使い方を簡単に、誤った使い方を困難に <https://yoshi389111.github.io/kinokobooks/prog_ja/prog053.htm >`__」
119
+
120
+ 🌯まとめ:ソフトウェアを作りたかった私へ
108
121
======================================================================
109
122
123
+ * 振る舞いを変更しやすい **構造 ** のコードを書くには
124
+ * **小さい ** 部品(関数・クラス)を組み合わせた構造を採用した
125
+
126
+ 🌯変更しやすいコードを書くコツが見えてきた今伝えられること 1/2
127
+ ------------------------------------------------------------
128
+
129
+ * 単一責務は恣意的
130
+ * 入出力と計算判断を **分ける **
131
+ * 使うと作るを **分ける **
132
+
133
+ 🌯変更しやすいコードを書くコツが見えてきた今伝えられること 2/2
134
+ ------------------------------------------------------------
135
+
136
+ * インターフェースとは **使い方 **。使うと作るを分けた先
137
+ * 継承は(理解するまでは)初手で使ってはいけません
138
+
139
+ 謝辞❤️
140
+ --------------------------------------------------
141
+
142
+ * 登壇練習会に協力いただいた開発チーム有志(Hさん、Nさん、Hさん)
143
+ * OOC 2024 スタッフの皆さま
144
+ * 知恵を書籍という形で伝えてくださった著者の皆さま
145
+ * 読書会共同主催のnibuさん、これまでの参加者の皆さま
146
+ * And You!!
147
+
110
148
ご清聴ありがとうございました
111
149
--------------------------------------------------
112
150
113
- 皆に幸あれ !
151
+ 皆に ** 幸 ** あれ !
114
152
115
153
引き続きOOCを楽しみましょう
116
154
155
+ .. include :: appendix.rst.txt
156
+
117
157
EOF
118
158
======================================================================
0 commit comments