タスクランナーって何??その概要と昨今のトレンドについて【超初心者編】
2015年5月10日 コーディング
フロントエンドエンジニアとして働き始めてから1年弱。
小さな会社のためフロントエンドの先輩がおらず、自己流且つ原始的な仕事のやり方を続けていても、後ろ指をさされることはありませんでした。
ただ、ものすごいスピードで変化しているWEB開発の環境において、あまりにもついていっていない自分。こんな僕でも危機感を覚えたので勉強していきたいと思います!
その備忘録。タスクランナー編。
タスクランナーとは
タスクランナーとは。
ものすごくざっくり言ってしまえば、必要な処理を自動でジャンジャンやってくれるやつ。と言えるでしょう。
フロントエンドエンジニアが主に使うツールです。
世の中には、
「プログラマーよ怠惰であれ」
という言葉もあるそうです。
品質の高いモノを早く正確に。高いパフォーマンスを発揮するために、自動化できるものは自動化する。怠惰であるために日々努力をしなければならないのです。
いつもやっている処理を自動で勝手にやってくれるなんて、怠惰このうえないですね!
歴史は浅い
タスクランナーは、2009年頃から出てきたツール。
当初Ruby系(Guard,Middleman)が主流だったけれど、2011年からは、Node.jsっしょ!みたいな流れらしいです。
タスクランナーは、その「自動でやってくれる」ツールの総称で合って、タスクランナー自体は複数あるので、「どのタスクランナーを使うのか」検討が必要です。
Node.js系ではGrunt、gulp.js、Brunch、Broccoliなどがあり、その中でも2015年現在では「Grunt」と「gulp」の2つで人気を2分していて、どっちかを入れましょうねという雰囲気らしい。
どちらであっても歴史は浅いく、Gruntが2011年でgulpは2013年7月登場ですから、まだまだ最近のものです。
ではどちらを導入するべきなのでしょうか。
Gulp
並列処理のため、実行速度が速いと好評なGulp。近年人気が出てきており、開発コミュニティーが今最も活発です。
設定ファイルもシンプルでわかりやすいと定評あり。とはいえ出てきたのが2013年7月。その歴史の浅さから、これから更に期待したいツール。
公式サイトhttp://gulpjs.com/
Grunt
Gulpに比べると歴史が長い分、デファクト感があり、「とりあえずGrunt入れとけ」と言う諸先輩方は多い(自分がGrunt使ってるからでしょう。)プラグインが最も多いので、拡張性が高く使い勝手はいい、、はず。
ただ動作は遅いし設定ファイルがわかりにくいという批判も一定数あり。
公式サイトhttp://gruntjs.com/
どちらかを入れてみよう
タスクランナーを使って処理の自動化。そのできることは実に様々です。
画像をフォルダに入れた瞬間に圧縮をしてくれたり、
更新作業をしたらブラウザを自動でリロードしてくれたり、
jsファイアルをまとめてくれたりしてくれます。
更に、
coffeescript・sass・jadeなどのコンパイルも自動化!
どんだけ作業減るのよ、という自動化してくれる作業の数々。
今の所、Gulp、Gruntどちらかを入れておけば困ることはないので、ぜひとも導入してみましょう!
そのうち導入編も書いてみたいと思います。(今まで続編書くと言って書いた事ありませんが、たぶん書きます)