JSLint

JSLintとは



JSLintは、JavaScriptソースコードが特定のコーディング規約に準拠しているかどうかをチェックするための静的解析ツールです。これは、ソフトウェア開発の初期段階で潜在的な問題を特定し、コードの品質を向上させるのに役立ちます。ダグラス・クロックフォード氏によって2002年に開発されました。

主な利用形態は、jslint.comで提供されているブラウザベースのWebアプリケーションですが、コマンドライン版も存在します。

ライセンス



JSLintのライセンスは、過去に何度か変更されています。2021年以降は、フリーソフトウェア財団(FSF)とオープンソース・イニシアティブ(OSI)によって承認されたUnlicenseライセンスを使用しています。

それ以前は、MITライセンスから派生したライセンスを使用していました。ただし、MITライセンスとの違いは、「JSLintは善のために使用し、悪のために使用してはならない」という条項が追加されていた点です。この条項が原因で、フリーソフトウェア財団は元のJSLintライセンスをノンフリーとみなし、JSLint関連のソフトウェアがGoogle Codeでホストされたり、Debian自由ソフトウェアパッケージリポジトリに含まれるのを妨げる要因となっていました。

クロックフォード氏によると、IBMから「悪」にも使えるライセンスの提供を求められたことが、ライセンス変更の背景にあったとのことです。

影響



JSLintは、最初のJavaScript用構文チェッカーの一つとされています。その登場以降、多くのツールに影響を与えました。

JSHint: 2011年、Anton Kovalyov氏はJSHintというフォークを作成しました。これは、JSLintの主張が強すぎると感じた開発者に対し、よりカスタマイズ性の高い選択肢を提供することを目的としていました。
ESLint: 2013年、ニコラス C. ザカス氏はESLintを作成しました。JSLintとJSHintには、コード品質とコーディングスタイルに関する追加のルールを作成する機能が欠けていました。ESLintは、すべてのルールを構成可能であり、実行時に追加のルールを定義またはロードできるため、より柔軟なリンティングツールとして登場しました。また、JavaScriptの最新バージョン(ECMAScript 2015以降)のリンティングもサポートしています。
JSCS: 2014年、Marat Dulin氏はJSCSを作成しましたが、2016年にESLintプロジェクトに参加し、JSCSのメンテナンスを中止しました。

2015年にSitePointが公開した比較では、ESLintがJSLint、JSHint、JSCSよりも推奨されています。CodeKitは2016年に、ESLintが「より多くの問題を見つける」こと、「はるかにカスタマイズ性が高い」こと、JavaScript構文チェッカーの「業界標準」であることを理由にESLintを賞賛しました。

また、2016年には、Palantir TechnologiesがTypeScript向けのESLintに相当するTSLintを作成しましたが、2019年にESLintTypeScript対応が組み込まれたため、TSLintは非推奨となりました。

参考文献



Doernhoefer, Mark (2006). “JavaScript”. SIGSOFT Softw. Eng. Notes 31 (4): 16–24. doi:10.1145/1142958.1142972.
Crockford, Douglas (May 2008). JavaScript: The Good Parts (1 ed.). O'Reilly Media. ISBN 0-596-51774-2.
Asleson, Ryan; Nathaniel T. Schutta (2005-10-14). Foundations of Ajax (1 ed.). Apress. ISBN 1-59059-582-3.

関連項目



静的コード分析
JavaScript用のツールのリスト

外部リンク



* 公式ウェブサイト

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。