gulpあるいはビルドツールとnpm run-scriptとの関係性

- by konitter

Gulp is awesome, but do we really need it?という記事を読んだ。元々Gruntを使っててgulpに移行して”holly grail”とまで思ってたけど、npm run-scriptにタスクまとめたらたったの9行で済んだよ!というお話。

コメント欄でかのTJ Holowaychuk氏から”pretty lame”だと突っ込まれているが、感想としては僕もそれに近い。自分一人しかいないのならやりやすいようにやればいい。が、チームとして複数人で開発するならこの方法は避けたほうがいいだろう。

現時点では、タスクはすべてgulpなどのビルドツールに1つまとめて、それを実行するコマンドはnpm run-scriptに集約する手法が現実的だと考えていて、言いたいことはJxck氏のQiitaの記事にすべて書かれている。

Kyo Nagashima氏のタスク・ランナーをnpm run-scriptでラップという記事に書かれているように、ビルドツールを通すほどでもないような小さなタスクは、nodeスクリプトとして書いてnpm run-scriptから--で引数を付けて実行するのも悪くない。ように見えるが、npmのバージョンが2以上に限られるのと(それほど大きな問題ではないけど)、タスクがばらけるのが個人的にはスッキリしない。

変にあいまいな部分を残すよりも、タスクはビルドツールに集約するとルールとして決めたほうが通りが良さそうに思う。関係者のスキルにばらつきがあるのならなおさらだ。

…とまあこんなチラ裏みたいなことを書いてみた。