2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

「最小努力の法則」とコード品質

Last updated at Posted at 2019-01-30

自戒の弁。

最小努力の法則

「最小努力の法則」というものがある。
これは、ある目標を達成するのに複数の方法が存在する場合、人間は最終的にもっとも少ない努力で済む方法を選択する、というものである。
私はこの法則を「ファースト&スロー」で知った。

これが、コード品質にも言えて、人間は動くための最小努力をして満足してしまう。
コードが動いた状態で満足してしまう。

立ち止まって見直そう

ここで本当はやらなくてはいけないのは、一度立ち止まって自分のソースコードを見直すということだ。
Gitなどでdiffをとって、本当にこのコードでいいかどうか、論理的に欠陥はないかを確かめてることが大切なのだ。

「ファースト&スロー」で言うところの 怠け者のシステム2(遅い思考。論理的な思考)に働いてもらわなければいけない。

欠陥を探すためのテスト

私も直感型の人間なので、怠け者だ。
怠け者はテストを書くのをサボリがちだ。

ただ、上記で書いた論理的欠陥を洗い出すためにはテストが有効だ。
テストケースを正常系/異常系でテストケースを考え、入力に対して正しく出力されるかを確かめるのだ。
人間の認知の限界をテストで超えなければならない。

テストが書きやすいコードを

ここで大事なのは テストがしやすいコード であることなのである。
テストをしづらいと、テストが書く気力が湧かない。
人間は低きに流れるので、できる限り流れないようにここをしっかりしなければならない。

今は大いに反省している。人類はもっとテストを書かなければならない。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?