私が歌川です

@utgwkk が書いている

全部見る

連休中に、golangci-lintに組み込まれているlinterを全部見た。Linters | golangci-lint から見れるので、みなさまも見てください。

世間でも全部見ている事例はありそう。こちらもあわせてどうぞ。

zenn.dev


これで記事を終わってもいいけど、もうちょっと続ける。

ここで「golangci-lintに組み込まれているlinterを全部見た」とは、以下のことを指している。

  • Linters | golangci-lint を開く
  • linterを上から順に見る
  • それぞれのlinterがどういうコードを検出するlinterなのか・どういう設定項目があるのかを把握する
  • 身近なコードベースに対してlinterを走らせる
  • (余裕があれば) linterのソースコードを眺める

数時間ぐらいで全部見おわり、(一部のルールが多いlinterを除けば) それぞれのlinterの特徴はだいたい分かった。あわせて Configuration | golangci-lint もひととおり目を通した。その上で、いま関わっているプロダクトのコードベースに何をどう適用すると効果的なのか検討し、いくつかのlinterを追加で有効にした。

「全部見る」は必ずしも「完全に理解している」を意味しないが、近いところには到達できると思う。何がどこにあるのか・何ができるかのアタリがつくようになった。裏を返すと早めに知っていればよかったと思うこともあるが、手札が増えたことを喜ぶべきだろう。linterのルールに限らず、ときどき「全部見る」行いをやるのが癖になっている。見えていると思っているものも、ほんの一部・上澄みしか見えていない、ということはよくある。

何が言いたいのかというと、全部見るのは健康にいいです。