最近、本格的に JavaScript をやろうかな、みたいなノリが出てきたので界隈の意味不明な用語をまとめてみました。

用語 説明 今使う?
node.js サーバーサイド JavaScript(ブラウザ以外でも動く)。
nvm, nodebrew node.js のバージョン切り替える君。
npm node.js のライブラリ管理ツール。Java で言うところの maven。
pom.xml = package.json
ES2015(ES6) 標準化された(ベンダー依存のない) JavaScript。ECMASCript の 6th Edition。
最近のブラウザでは概ね動作するが、動かないブラウザもあるため、後述の Babel 等のトランスパイラで ES5 などに変換する必要がある。
Babel ES6 -> ES5(これ only ではない)に変換する君。トランスパイラと呼ばれる。
webpack 複数のモジュールを1つのファイルにまとめる。モジュールバンドラと呼ばれる。
ブラウザで動かす際は webpack か browserify を使ってモジュール機構を利用できるようにする。
browserify require を使ったコードをブラウザでも動くようにする君。
Babel がやってくれないの?と思ったが、Babel は import -> require にするだけで、それはブラウザで動かないので browserify が必要。
bower クライアントサイド JavaScript のライブラリ管理ツール。
npm = サーバーサイド、bower = クライアントサイド、という住み分けだったらしいが、npm に統一されるらしい。
yarn npm のラッパー。package.json, node_modules/ など、同じファイル・フォルダを利用する。
出た当初は npm でバージョン勝手に上がる問題など、幾つかの npm の問題を解決できたが、npm v5 でここらへんも解決できるようになったので、あまり優位性はなさそう。
Grant, gulp タスクランナーと呼ばれるもの。maven で、mvn package とかすると、compile して test として jar にするのをよしなにやってくれるが、そういう複数のタスクを書くためのもの。
現在は npm scripts で十分という声もあり、開発は停滞気味。
TypeScript, CoffeeScript JavaScript っぽいもの。AltJS(JavaScript を代替するもの) と呼ばれる。
ちなみにこれらをブラウザで動かすにはコンパイルが必要で、それぞれのコンパイラが存在する。
1417contribution

「今後使う?」は個人的な印象でしょうか。世の中のムーブメント的な話でしょうか。

66contribution

node.js のバージョン切り替えは n でやることが多いですね

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.