検索
ホームページウェブフロントエンドjsチュートリアルESLint 対 Prettier: コードベースに関する大論争

正直に言うと、JavaScript と TypeScript の開発者はツールについて議論するのが大好きです。

タブまたはスペース?セミコロンはありますか?そして今、(JavaScript 年に)古くからある質問です: ESLint、Prettier、または両方を使用するべきですか?

これは、ユーモアを散りばめ、開発者向けの洞察をたっぷりと盛り込んだ、この狂気を理解するのに役立つフレンドリーなガイドです。

出場者を紹介

ESLint: 探偵

ESLint は、バグを発見するだけでなく、コード スタイルについて一方的にアドバイスをくれる、非常に優秀なチームメイトです。

これは、コードが機能することを確認する静的コード分析ツールですそしてルール (もちろん、あなたのルール) に従っていることを確認します。

ESLint vs Prettier: The Great Debate for Your Codebase

より美しく: 美容師

プリティアーは、あなたの好みを聞かずにあなたの乱れた髪を直してくれる友達のようなものです。

それは独断的で冷酷であり、クリーンで一貫性のあるようにコードをフォーマットすることがすべてです。

その決定のすべてに同意するわけではないかもしれませんが、少なくとも一貫性はあります!

彼らがやっていること

機能 ESLint さらにきれい
Feature ESLint Prettier
Report code errors Yes No
Automatically fix code errors Yes No
Add custom rules/options Yes No
Formatting Yes Yes
Opinionated configurations Optional Yes
コードエラーを報告 はい いいえ コードエラーを自動的に修正します はい いいえ カスタム ルール/オプションを追加します はい いいえ フォーマット はい はい 独自の構成 オプション はい テーブル>

主な違い:

  • ESLint はシャーロック ホームズです。ESLint は、卑劣な未使用変数や偶発的なグローバル スコープ宣言を検出します。
  • より魅力的なのは近藤麻理恵です。コードを整理しますが、バグがあるかどうかは気にしません。

ESLint vs Prettier: The Great Debate for Your Codebase

Prettier が存在する理由

Prettier が誕生したのは、フォーマットに関する議論に貴重な時間とエネルギーが費やされていたためです。

if キーワードの後に​​スペースを入れる必要がありますか?行の長さは 80 にするべきですか、それとも 100 にするべきですか?プリティアは「黙って、私に任せてください。」

コードベース全体を一貫した方法で再印刷し、スペースやタブを越えたバイクシェディングを過去のものにします。

トレードオフ?構成可能性が低い - Prettier が最善と考えるものに固執することになります。 (ネタバレ: 通常は大丈夫です。)

でも、ESLint もフォーマットします…そうですよね?

はい、しかし問題は次のとおりです:

  • ESLint の書式設定ルールは Prettier と競合する可能性があります。
  • コード品質ルールと書式設定ルールの両方を 1 つのツールで維持するのは…面倒です。

ESLint 開発者自身も、lint とフォーマットの組み合わせが理想的ではないことを認めています。

Prettier の登場です。ESLint の書式設定の負担を軽減する専用フォーマッタです。

両方を使用する必要がありますか?

黄金律

書式設定には Prettier を使用します。コード品質のために ESLint を使用します。

上手に遊ばせる方法

  1. eslint-config-prettier をインストールします。これにより、Prettier と競合する可能性のある ESLint の書式設定ルールが無効になります。
  2. それを .eslintrc 構成に追加します。
   {
     "extends": [
       "eslint:recommended",
       "plugin:prettier/recommended"
     ]
   }
  1. Prettier がコードをフォーマットし、ESLint が本当のバグをキャッチできるようにします。

さらに美しくする必要がありますか?

次の場合:

  • 書式設定ルールについての長い議論を嫌います ✓
  • チーム全体で一貫したコードが必要です ✓
  • 非常に独自の ESLint 設定 (Airbnb など) を使用し、そのフォーマットに満足していますが、そうではないかもしれません。

Prettier は、一貫性が重要な大規模なチームで威力を発揮します。ただし、ソロで作業している場合、またはすでに ESLint のフォーマットに満足している場合は、ESLint なしでも問題なく過ごせるかもしれません。

比較表: ESLint と Prettier

Aspect ESLint Prettier
Nature A static code analysis tool and linter for JavaScript, focused on identifying code issues A code formatter designed to make code more readable and consistent
Primary Purpose Ensures code quality and detects potential bugs Focuses purely on consistent code formatting
Configuration Highly customizable; rules are defined in a .eslintrc config file Minimal customization; enforces standard formatting rules with optional tweaks in .prettierrc.json
Integration Works with popular IDEs, offering real-time feedback and auto-fixing of linting issues Easily integrates with IDEs to format files automatically on save

最終的な感想

  • ESLint はコードのセーフティ ネットです。バグを捕捉し、ベスト プラクティスを適用し、品質を保証します。
  • プリティターはあなたの平和維持者です。書式設定をめぐる引数を停止し、コードをすっきりとした見た目に保ちます。

TL;DR

Prettier を使用してフォーマットします。 ESLint を使用して分析します。迷った場合は、ツールはあなたの生活を難しくするのではなく、楽にするためにあるということを思い出してください。

チームとあなたの健全性にとって最も効果的なものを選択してください。

コーディングを楽しんでください。リントと書式設定が調和しますように!


私は LiveAPI というとても便利なツールに取り組んでいます。

開発者にとって API ドキュメントを簡単に作成できるように設計されています。

LiveAPI を使用すると、ユーザーがブラウザーから直接 API を実行できるインタラクティブな API ドキュメントを迅速に生成できます。

ESLint vs Prettier: The Great Debate for Your Codebase

API のドキュメントを手動で作成するのにうんざりしている場合は、このツールを使用すると作業が楽になるかもしれません。

ESLint vs Prettier: The Great Debate for Your Codebase
ESLint vs Prettier: The Great Debate for Your Codebase

Lama2 から LiveAPI へ: 超便利な API ドキュメントの構築 (パート II)

Athreya aka Maneshwar for Hexmos ・ 2024 年 12 月 14 日

#webdev #javascript #プログラミング #初心者

以上がESLint 対 Prettier: コードベースに関する大論争の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Python vs. Javascript:どの言語を学ぶべきですか?Python vs. Javascript:どの言語を学ぶべきですか?May 03, 2025 am 12:10 AM

PythonまたはJavaScriptの選択は、キャリア開発、学習曲線、エコシステムに基づいている必要があります。1)キャリア開発:Pythonはデータサイエンスとバックエンド開発に適していますが、JavaScriptはフロントエンドおよびフルスタック開発に適しています。 2)学習曲線:Python構文は簡潔で初心者に適しています。 JavaScriptの構文は柔軟です。 3)エコシステム:Pythonには豊富な科学コンピューティングライブラリがあり、JavaScriptには強力なフロントエンドフレームワークがあります。

JavaScriptフレームワーク:最新のWeb開発のパワーJavaScriptフレームワーク:最新のWeb開発のパワーMay 02, 2025 am 12:04 AM

JavaScriptフレームワークのパワーは、開発を簡素化し、ユーザーエクスペリエンスとアプリケーションのパフォーマンスを向上させることにあります。フレームワークを選択するときは、次のことを検討してください。1。プロジェクトのサイズと複雑さ、2。チームエクスペリエンス、3。エコシステムとコミュニティサポート。

JavaScript、C、およびブラウザの関係JavaScript、C、およびブラウザの関係May 01, 2025 am 12:06 AM

はじめに私はあなたがそれを奇妙に思うかもしれないことを知っています、JavaScript、C、およびブラウザは正確に何をしなければなりませんか?彼らは無関係であるように見えますが、実際、彼らは現代のウェブ開発において非常に重要な役割を果たしています。今日は、これら3つの間の密接なつながりについて説明します。この記事を通して、JavaScriptがブラウザでどのように実行されるか、ブラウザエンジンでのCの役割、およびそれらが協力してWebページのレンダリングと相互作用を駆動する方法を学びます。私たちは皆、JavaScriptとブラウザの関係を知っています。 JavaScriptは、フロントエンド開発のコア言語です。ブラウザで直接実行され、Webページが鮮明で興味深いものになります。なぜJavascrを疑問に思ったことがありますか

node.jsは、型を使用してストリーミングしますnode.jsは、型を使用してストリーミングしますApr 30, 2025 am 08:22 AM

node.jsは、主にストリームのおかげで、効率的なI/Oで優れています。 ストリームはデータを段階的に処理し、メモリの過負荷を回避します。大きなファイル、ネットワークタスク、リアルタイムアプリケーションの場合。ストリームとTypeScriptのタイプの安全性を組み合わせることで、パワーが作成されます

Python vs. JavaScript:パフォーマンスと効率の考慮事項Python vs. JavaScript:パフォーマンスと効率の考慮事項Apr 30, 2025 am 12:08 AM

PythonとJavaScriptのパフォーマンスと効率の違いは、主に以下に反映されています。1)解釈された言語として、Pythonはゆっくりと実行されますが、開発効率が高く、迅速なプロトタイプ開発に適しています。 2)JavaScriptはブラウザ内の単一のスレッドに限定されていますが、マルチスレッドおよび非同期I/Oを使用してnode.jsのパフォーマンスを改善でき、両方とも実際のプロジェクトで利点があります。

JavaScriptの起源:その実装言語の調査JavaScriptの起源:その実装言語の調査Apr 29, 2025 am 12:51 AM

JavaScriptは1995年に発信され、Brandon Ikeによって作成され、言語をCに実現しました。 2。JavaScriptのメモリ管理とパフォーマンスの最適化は、C言語に依存しています。 3. C言語のクロスプラットフォーム機能は、さまざまなオペレーティングシステムでJavaScriptを効率的に実行するのに役立ちます。

舞台裏:JavaScriptをパワーする言語は何ですか?舞台裏:JavaScriptをパワーする言語は何ですか?Apr 28, 2025 am 12:01 AM

JavaScriptはブラウザとnode.js環境で実行され、JavaScriptエンジンに依存してコードを解析および実行します。 1)解析段階で抽象的構文ツリー(AST)を生成します。 2)ASTをコンパイル段階のバイトコードまたはマシンコードに変換します。 3)実行段階でコンパイルされたコードを実行します。

PythonとJavaScriptの未来:傾向と予測PythonとJavaScriptの未来:傾向と予測Apr 27, 2025 am 12:21 AM

PythonとJavaScriptの将来の傾向には、1。Pythonが科学コンピューティングの分野での位置を統合し、AI、2。JavaScriptはWebテクノロジーの開発を促進します。どちらもそれぞれのフィールドでアプリケーションシナリオを拡大し続け、パフォーマンスをより多くのブレークスルーを行います。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境