読者です 読者をやめる 読者になる 読者になる

意図を実現することが難しいんだと思いました

また意図の話…
 
デッドコード、到達不能コードがあったとして、
さらに実はデッドコードが実行されていないにも関わらず正常に動いている場合、
そのデッドコードは削除しても問題ない気がします。
 
しかし、例え外から見たときに正常に動いていたとしても、
デッドコードとなっている機能を実装した意図が実現できているのか否か、が重要な気がしました。
もし、デッドコードを削除したときに、実装した意図が実現できていないのであれば、
単純に削除するのではなく、それは別途対策をとる必要があるのではないかと思いました。
 
無理矢理例えると、「ワン」という音を出す事が正常である装置があったとして、
作成者Aが「犬の鳴き声」を出す装置として作成した後に、
作成者Bが「1を英語で言う」という機能を追加して実は「1を英語で言う」機能だけが動いていたとき、
外から見れば「ワン」という音が聞こえるので正常に見えます。
そして、おそらく「犬の鳴き声」を出す機能を削除しても「ワン」と聞こえます。
 
しかし、なぜ「犬の鳴き声」を出す機能が必要だったのか、
その本質をとらえたときに、単純に削除するわけにはいかない
もっと細かい理由が見えてくるんじゃないか、そして実現すべきはその細かい理由なのではないか、
などと、思った次第でした。
 
例え話がわかりにくくて僕の意図は伝わらない気がしました。