3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

denoにlintツールが追加されました

Posted at

#ESlintより高速なリントツール
 私は仕事で大規模なjs/tsプロジェクトに参加したことがないので、lintツールを使ったことがありません。個人開発でも入れようと思っていたんですが、後手後手に回っていました。ちょっと面倒そうだな…という逃げの精神ですね。
 しかし、6/13の1.1.0アップデートでdenoがCLIツールとしてlintツールを導入してくれました。もうこれで逃げることはできません。そこで、さっそく使ってみたので、この記事では概要をご紹介しようと思います。
 詳細はこちらを読んでください。→Linter

##良い点
 正直、私はESlintを使ったことがないので比較は出来ないのですが、良かった点を書いてみます。
###動作が早い
 rustで書かれているからか、高速で動くそうです。私が実際に図ったわけではないので、未検証ではありますが、公式によると下記のような結果が出たそうです。

"runsAvgMs":2.4468227999999725,
"runsAvgMs":2282.9389232,
https://github.com/denoland/deno_lint

試行回数5回
denolint→平均約0.00245秒。
ESlint→平均2.28294秒

 おおよそ1000倍以上の差が出ています。条件によって色々変わることは想定されますが、相当の性能差です。まぁこんなにEslintが2秒かかるから困る

###環境構築が簡単(不要)
 deno v1.1.0なら特に追加の設定なく使えます。
 因みにdenoはアップデートも簡単です。

#latestへアップデートされます。
deno upgrade 
#因みにバージョン指定もできるので、バージョンダウンも簡単です。
deno upgrade --version 1.0.5

###利用方法も簡単
 コマンドを叩くだけです。

#まだテスト機能なので、unstableフラグが必要です。
#そのうち必要なくなると思います。
deno lint --unstable

###lint対象外にするのが簡単
 プログラムの記述前に下記の様にコメントを差し込むだけで、lintの対象外にすることができます。またlintのルールをコメントの最後にいれることで、特定のルールのみ無視することも出来ます。

// deno-lint-ignore-file 対象ルール名
const main = () =>{/*more*/}

ルールに関しては、公式ドキュメントを確認して下さい。

##おわりに
 開発中ではありますが、便利だと思います。モダンなサーバサイドjsであるdenoにlintツールが標準付属するのも、これからの時代を感じさせますね。まだきちんと使いこなせてはいないので、色々調べてまた記事にするかもしれません。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?