web-dev-qa-db-ja.com

EditorConfig対Eslint対Prettier:これらすべてを使用する価値はありますか?

複数の開発者が使用するコードベースの一貫性を維持するために、いくつかのツールをセットアップしようとしています。 EditorConfig、ESlint、およびPrettierをすべて一緒に使用する必要がありますか?私が理解している限り、EditorConfigはコーディングスタイル/ルールの設定に使用され、ESlintはコードがルールに従っていない場合に警告をスローすることでコードが一貫してフォーマットされていることを確認するために使用され、prettierはルールに基づいてコードを自動的にフォーマットするために使用されますただし、ルールをよりきれいにカスタマイズして、EditorConfigのジョブを実行できると思います。これは本当ですか?一貫したコードを維持するために使用するツールの最適な組み合わせは何ですか?

28
PBandJen

私の経験では、最適な組み合わせはすべて3です。その理由は次のとおりです。

EditorConfig:これにより、編集者はスタイルガイドのようなコードを作成できます。これは、目標を達成するために厳密に必要というわけではありませんが、同じコーディングスタイルに従うコードを常に見ているのは良いことです。そうしないと、EditorConfigがない場合、エディターを入力しているときに、他のコードベースとは異なる方法で自動フォーマットされるため、混乱を招きます。もちろん、きれいに設定した場合は、コードベースに入る前に修正されますが、それでも、書き込み中に1つの形式で表示して、移動時に切り替える必要があるのはなぜですか?コミットする?一貫性があるかもしれません。

Prettier:コードを自動的にフォーマットします。コミットのためにファイルをステージングするときにこれを行うように設定するのが好きなので、スタイルガイドと一致しないコードをコミットすることは物理的に不可能です。

ESLint:では、なぜリンターも必要なのでしょうか? ESLintは単なるスタイル以上のものを行うためです。使用しない変数を宣言するとき、または定義されていないものを参照するときに、他のいくつかの便利な機能の中で取り上げられます。そのため、その役割はきれいになる前の日と比べてやや減少しますが、他のエラーをキャッチするためにプロジェクトに参加することは依然として有用です。

お役に立てば幸いです!

53
KevinBrownTech