株式会社TECH LUCKという会社で代表兼エンジニアをしている齊藤です。
DXプロジェクト、開発プロジェクト、Rails開発などでお困りごとがありましたら弊社HPからご相談をいただけますと幸いです。
以下のような問題に対応することが可能です。
- プロジェクトでRailsエンジニアが足りなくて困っている
- Railsのバージョンアップをしたいがノウハウ・リソースが足りなくて困っている
- オフショア開発をしているが、要件の齟齬やコード品質が悪いので改善したい
また、Railsエンジニアも募集しておりますので、興味がありましたら弊社HPからご連絡いただけますと幸いです。
前提
Node.jsを使おうとすると、nvmやnpm、yarn、package.jsonなど色々な横文字が出てきて大変だったので、それらについてザックリとまとめてみました。
間違いなどがあった場合はコメントいただけると幸いです。
Node.js
Node.jsとは、サーバーサイドで動くJavaScriptになります。
詳細は以下の記事を参考にしてみてください。
https://qiita.com/non_cal/items/a8fee0b7ad96e67713eb
https://qiita.com/hshimo/items/1ecb7ed1b567aacbe559
nvm
nvmとは、Node Version Managerの略で、上記のNode.jsのバージョン管理するパッケージになります。
Node.jsは多くのバージョンがリリースされています。nvmでNode.jsを管理することで、Node.jsのバージョン管理が簡単になります。
nodebrew
nodebrewもNode.jsのバージョン管理システムになります。nvmでもnodebrewのどちらでもNode.jsのバージョン管理をすることができるということです。
nvmと違って、プラットフォームに依存せず簡単にバージョンが切り替えられるらしいです。(あんまりよく知らない)
npm
npmとは、Node Package Managerの略で、Node.jsで作られたパッケージやライブラリを管理するツールになります。
パッケージマネージャーとはライブラリやパッケージの管理ツールのことです。 パッケージマネージャを使うことで、使いたいライブラリの導入や削除を簡易にしたり、パッケージ同士の依存関係を管理することができます。
package.json
package.jsonは、パッケージの依存関係を記述したjsonファイルになります。
このファイルに、プロジェクト毎に必要なパッケージの名前とバージョンを記述すれば、npmが自動で必要なパッケージをインストールしてくれます。
インストールしたパッケージが依存しているパッケージや、さらにそれが依存しているパッケージも自動でインストールしてくれるので、開発環境ごとにインストールさえるパッケージが違うということが起こりません。
yarn
yarnとはパッケージマネージャーのnpmの上位互換のようなツールです。
yarnを使うとnpmの以下の課題を解決することが可能です。
- インストールが遅い
- インストール結果に一貫性がない
- セキュリティ上の懸念がある
yarnはnpmで管理されているパッケージになります。
また、package.jsonに対応しているので、npmでpackage.jsonを使っている場合はすぐに移行できるようです。
webpack
webpackは、Webアプリケーションに必要なリソースの依存関係を解決し、CSSやJavaScriptなどのアセットを生成するビルドツールです。
Webアプリケーションのビルドツールは他にも、GruntやGulpと呼ばれるものが有名です。GruntやGulpなどはここでは説明しないので、興味があれば調べてみてください。
webpackもnpmで管理されているパッケージになります。
参考にしたサイト