# Node, npm, webpack, Vue, Reactなどについて [TOC] Vue, React, Nuxt, Nextなどは、基本的にはwebpackが無いと動かない。 ※Vue, Reactは簡単な構成だったら、CDNでも可能 ## webpack 元々は、複数ファイルを1つのJSファイルにまとめてくれるツール。 Webでは、読み込むファイル数が多いと、表示速度が下がるので、できるだけファイル数を少なくしたい。 今は、さらにSassのコンパイル(変換)・コードの圧縮・サーバーの立ち上げなど色々な機能が搭載されているが、以前はGruntやGulpというツールがそれを担っていたが、 GruntやGulpの機能をwebpackができるようになっったので、webpackだけが使われるようになった。 ## Node.js Grunt,Gulp,webpackはNode.jsで動いています。 Node.jsとは、ブラウザ以外で動作することができるJS。 ### npm Nodeのパッケージ(プラグイン)を管理してくれる、ツール。パッケージマネージャーという。Nodeをインストールするときに一緒に勝手にインストールされる。 ### yarn npmと機能は一緒だが、違う会社が作っている。 今は速度がnpmと一緒だが、当初はyarnの方が早かった。 体感的にnpmより、yarnの方がバグが少ない。 ### pnpm npmやyarnより早いが、全てのパッケージに対応しているわけでは無いので、将来的には普及する見込みだが、今は様子見 ## コマンドラインツール Node.jsやnpmなどは基本的には、コマンドで操作する必要があるので、コマンドラインの知識が必要。 ## Vite, TurboPack... Webpackの数倍早いのもある。 今後も新しいのが出てくると思います。 - Vite → React, Vue, astroなど色々対応してる。 - TurboPack → Next.js専用 ## まとめ - VueやReactはWebpackが必須 - webpackはNodeが必須 - Nodeはnpmなどが必須 - Nodeやnpmはコマンドラインツールが必須 ###### tags: `自分用メモ`