About
2019/5/19に更新

ESLintは、もともと2013年6月にNicholas C. Zakasによって作成されたオープンソースのJavaScriptリンティングユーティリティです。Code lintingは、問題のあるパターンや特定のスタイルガイドラインに準拠しないコードを見つけるためによく使用される静的分析の一種です。 ほとんどのプログラミング言語にはコードリンターがあり、コンパイラはリンティングをコンパイルプロセスに組み込むことがあります。

JavaScriptは動的でゆるやかに型付けされた言語であるため、開発者のエラーが特に発生しやすいです。JavaScriptコードは通常、構文やその他のエラーを見つけるためのコンパイルプロセスの恩恵を受けずに実行されます。 ESLintのようなリンティングツールを使用すると、開発者はJavaScriptコードを実行せずに問題を発見できます。

ESLintが作成された主な理由は、開発者が独自のリンティング規則を作成できるようにするためです。 ESLintは、すべてのルールを完全にプラグインできるように設計されています。デフォルトのルールは他のプラグインのルールと同じように書かれています。ルール自体とテストの両方に対してすべて同じパターンに従うことができます。 ESLintには最初から便利にするための組み込みルールが付属していますが、いつでも動的にルールをロードすることができます。

ESLintはNode.jsを使って書かれており、高速な実行環境とnpmによる簡単なインストールを提供します。

哲学

すべて拡張可能です:

  • ルールAPIは、組み込みルールとカスタムルールの両方で使用されます。
  • フォーマッタAPIは、組み込みフォーマッタとカスタムフォーマッタの両方で使用されます。
  • 追加の規則やフォーマッタを実行時に指定することができます
  • ルールとフォーマッタを使うためにバンドルする必要はありません

すべてのルール:

  • スタンドアロンです
  • オフまたはオンにすることができます(「オフにするには重要すぎる」と見なすことはできません)
  • 個別に警告またはエラーに設定できます

加えて:

  • ルールは "agenda free" - ESLintは特定のコーディングスタイルを宣伝していません
  • すべての組み込みルールは一般化可能です

プロジェクト:

  • 文書化とコミュニケーションの明確化
  • できるだけ透明です
  • テストの重要性を信じています
このページの内容は https://eslint.org/docs/about (MIT) から引用しています