Node.js

javascriptはフロント側だけが常識だったけど、Node.jsはサーバーサイドでも動作するjavascript。

元々、javascriptはブラウザの中で、DOMを操作するScript言語。
HTML内で<script>タグ内に書いて、ブラウザを起動して動作させるものだったが、HTMLに関係なくjavascriptを動作させるJavaScriptの実行環境を実装したサーバー構築ソフトということ。
バックエンドもフロントも同じ言語が使えるメリットがある。

Node.js = サーバサイドJavaScript

今のところ、サーバーサイトで動作するjavascript環境を用意できるのはNode.jsのみということらしい。

サーバーサイドでもjavascriptが動作するのはなんとなく危険な感じもするけど、多くのリクエストの処理ができて優れているらしい。逆にそれでサーバーダウンの可能性もあるということくらい。

現実には、まだレンタルサーバーでNode.jsに対応しているところはない。
(後からの設定でなんとかなるところはある様子。)
LaravelもBreezeなどNode.jsが必須。(vueを使うため)
なのでこれからのシステム開発は、本番環境はもちろん、テスト環境でもNode.jsに対応が必要

必ず出てくるのが、npm

Node.js内には構築されたパッケージがたくさんある。
それを管理するパッケージ管理ツールがnpm。

最近では、yarnというのもある。これもパッケージ管理ツールでどちらを使ってもよいらしい。
(python でのpipやcondaみたいな感じに思える)

ちなみに、Vue.jsやReact.jsはjavascriptのフレームワークで、node.jsのフレームワークかと誤解していたが、VueやReactの実行環境をNodeを使って作っているということ。