名前重要なんだけど、否定形使わないとか、yes/noわかる形にするとか、一歩踏み込んだ事を書かないと、結局何を言ってるのかがわかりにくい
そもそも、YAGNIのところで汎用性を狙うよりも単純で具体的であることが大事で、その方がかえって汎用性があると書いてるのと実は反しているという...
あと、関数名は、自分が書く時は副作用なく正しい名前にする一方で、それを信じすぎてはいけない
特にレガシーコードの場合は、意図せぬ副作用のために呼んでいる可能性すらある(例:変数を初期化するためにDB接続を何度も実行する...接続何度もする必要ねーじゃんと思って消したら、実は変数初期化が重要で、この"善意のリファクタ"がバグを産むんだけど、処理は流れてしまって、気付かないというパターン。多分、SIerではこういう謎バグをたくさん踏んで、それでリファクタしなくなっている)
つまり、この原理は書き手にとって大事な一方で、それを盲信してはいけない。これで原理主義に陥ると、やばい。
旧プログラムを書いた人のせいにするか、直しミスった自分のせいにするかで、成長の幅も決まる。
Conversation
Notices
-
( ᐛ) まりなっピ (sasanquaneuf@qiitadon.com)'s status on Wednesday, 26-Sep-2018 06:21:15 JST
( ᐛ) まりなっピ