ESLint
JavaScriptとTypeScriptのコードを静的解析し、潜在的なバグや規約違反を検出するリンター。プロジェクト全体で一貫したコードスタイルを強制し、コードレビューの負担を軽減する。
ESLintとは?
ESLintは、JavaScriptおよびTypeScriptのソースコードを静的解析し、潜在的なバグ・アンチパターン・コーディング規約違反を検出するオープンソースのリンターです。Nicholás Zakas氏が2013年に開発しました。
ESLintでできること
- バグの早期発見: 未使用変数・未宣言変数の使用・型の不一致
- スタイル統一: インデント・セミコロン・クォートの一貫性
- ベストプラクティスの強制:
varの禁止・===の強制 - 自動修正: 一部のルールは
--fixオプションで自動修正可能
設定ファイル(eslint.config.js / Flat Config)
ESLint v9からFlat Config形式が標準になりました:
import js from "@eslint/js";
export default [
js.configs.recommended,
{ rules: { "no-unused-vars": "warn" } }
];
PrettierとESLintの役割分担
| ツール | 役割 |
|---|---|
| ESLint | バグ・ロジック的な問題の検出 |
| Prettier | コードフォーマット(見た目の統一) |
両者は競合しないため、組み合わせて使うのが一般的です。
まとめ
ESLintはCI/CDパイプラインに組み込んで、コードレビュー前に自動チェックすることで開発品質を継続的に担保します。
関連する用語 (プログラミング)
全33件を見るモノレポ(Monorepo)
複数のプロジェクトやパッケージを1つのGitリポジトリで管理する手法。コードの共有・一貫したCI/CD・依存関係の統一が容易になる。Turborepo・Nx・Yarnワークスペースで実装される。
WebAssembly(Wasm)
ブラウザ上でネイティブに近い速度で実行できるバイナリ命令形式。C・C++・Rustなどのコードをブラウザで動かすことができ、ゲーム・動画編集・CADなど計算負荷の高いWebアプリに使われる。
Ruby (ルビー)
「プログラミングを楽しむ」ことを目的に日本のまつもとゆきひろ氏が開発した、美しく書きやすい言語。
Python (パイソン)
AI(人工知能)やデータ分析の分野で世界的に最も人気のあるプログラミング言語。
Prettier(コードフォーマッター)
コードを自動的に整形するオピニオネイテッドなフォーマッター。JavaScript・TypeScript・CSS・HTML・JSON・Markdownに対応し、チームのコードスタイル論争を終わらせる。
Go / Golang (ゴー言語)
Google社が開発した、処理速度が超絶爆速で、大量のアクセスに強い現代的なプログラミング言語。