UbuntuにnodeとTypeScriptをインストールする手順
モバイル開発の場合であっても何らかの理由でサーバーを利用しなければならないことが多い。サーバーと言えばUbuntuが代表的で慣れておいた方が何かと便利だろう。
モバイル側のコード作成はmacOSでやるのが一般的だが、モバイル開発に対応したWeb開発はUNIX系のUbuntuかRed Hat Linux(CentOS)というのが定番だと思う。出来上がったサーバーパッケージをAWSにデプロイする事もできる。XXサーバーを立てる、といった作業を手早くできることはチーム開発で大切なことだ。
Ubuntuにnode.jsをインストールしようと思って本家のサイトhttps://nodejs.org/ja/download/に行くと懐かしのtar.gz形式のファイルがダウンロードできる。(今は知らない人も多いと思うが、Tarってテープアーカイブの略。昔のサーバーにはよくテープバックアップ装置がついていた)まあそれはそれでいいと思ったが、頻繁に行われるアップデートにも対応したい。
そこでNode.js Version Manager(NVM)を利用しようと思った。ネットで検索するとNVMのそのものへの直リンクが記載されている事が多く、NVM自体が旧バージョンである事が多かった。
その時々への最新版へのリンクより、サイトへのリンクhttps://github.com/nvm-sh/nvmの方が確実だ。
新しくUbuntuをインストールしたばかりならcURLが入っていない。
手順としては以下のようになる。
- cURLのインストール
シェルを起動して次のコマンドを入力
sudo apt install curl
- NVMのインストール
https://github.com/nvm-sh/nvmにてScriptをコピーし、シェルで実行する。2021/01/27現在では以下のようになっている。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash
これを実行すると環境設定ファイル.bashrcに必要な設定が追加される。新たにシェルを起動すればNVMが起動できる。バージョン確認オプションを付けて起動してみると
$ nvm --version 0.37.2
のように表示されるだろう。
- node.jsのインストール
まずはどんなバージョンがインストールできるか確認。
nvm ls-remote
たくさん表示されるが多くの場合、最新のLTSをインストールしたいだろう。古い順に表示されるので最後の方にお目当てのものがあるはず。インストールコマンドと実行結果は以下のようになる。
$ nvm install 14.15.4 Downloading and installing node v14.15.4...Downloading https://nodejs.org/dist/v14.15.4/node-v14.15.4-linux-x64.tar.xz... ######################################################################### 100.0% Computing checksum with sha256sumChecksums matched!Now using node v14.15.4 (npm v6.14.10) Creating default alias: default -> 14.15.4 (-> v14.15.4)
ここではシェルを再起動する必要なくnodeとnpmが実行できる。
$ node -v v14.15.4 $ npm -v 6.14.10
- TypeScriptのインストール
本家のサイトhttps://www.typescriptlang.org/にインストール方法がいくつか記載されている。npm, yarn, pnmpの三つがUNIX系のインストール方法だ。npm以外の二つはnpmが必要。だから最短距離はnpmだ。
開発用オプションとグローバルオプションの二通りがある。
npm install typescript --save-dev npm install -g typescript
前者でインストールするとコンパイラー実行時にそれぞれnpx tsc, yarn tsc, pnpx tscのように書く必要があるがグローバルにインストールするとtscでよい。
グローバルにインストールしてバージョン確認すると
$ tsc --version Version 4.1.3
のように表示される。
-
Visual Studio Codeのインストール
定番のエディタというかIDEというか、コーディングツール。Ubuntuにはdebファイルが用意されていて、インストールは簡単。https://code.visualstudio.com/Downloadでダウンロードできるので簡単にインストールできる。
-
ESLintのインストール
以前ならTSLintを入れるところだが、廃止予定になった。ESLintがTypeScriptもサポートするようになっているのでESLintをインストールする。やり方はTypeScriptと同様。
npm install eslint --save-dev npm install -g eslint
入れただけではVS Codeで有効化されていない。ウィンドウ右下の赤い字のESLINTアイコンに注目。
ESLINTアイコンをクリックすると有効化をワークスペース限定にするか、どこでも有効化するかを聞かれるので適宜選択。
有効化を選ぶと文字色が他と同じになって有効化されている事が分かる。
- 感想
モバイル開発でReact Nativeを利用するところも多いようだが、多分、JavaScriptを使える人が多いからだと思う。ただこれからはTypeScriptというのが世界の潮流。
一方、Nodeに代わるDenoというものがNodeの開発者によって開発され1.0を越え現在1.7.0。こちらではTypeScriptが最初からサポートされている。Nodeで弱いとされていた非同期処理やセキュリティ周りが強化されているなどこれからの開発基盤として選択されることが多くなっていきそうなプラットフォームだ。
Apple系のmacOS, iOS, tvOS, watchOSではSwiftUIへの移行。Android系では第2世代アプリと呼ばれるJetpackの導入、そしてWeb開発ではJavaScriptからTypeScript、さらにNodeからDenoという変革。
日常の仕事も忙しいのに開発者はこれらのスタディをせずにはいられない。しかもほとんどのドキュメントは英語と思って良い。
実に楽しいとも言えるが、仕事で期日を切られてとなるとやっぱり辛いかも、というのが正直なところ。