ゼロからリンターを作る
概要
リンターの有用性は過小評価されるべきではありません。リンターは軽量なPRレビューの形として機能します。
実際、Google SREガイドでは、「nitpick」コメントはリンターに任せるべきだと提案しています。
リンターは明白なバグを防ぎ、コード品質の守護者として機能します。
レッスンの基礎
リンターは通常、言語固有のものです。例えば、Go言語用のReviveなどがあります。
リンターは、コンパイラが公開する抽象構文木(AST)に依存することが多いです。
実際、GoコンパイラがGoコードをコンパイルするために使用するのと同じASTです(そうです、Goコンパイラ自体もGoで書かれています)。