Open1
Javascriptでデスクトップアプリを作りたいときの技術構成検討メモ
Node.js
- ブラウザ上だけでなくパソコン上でJavascriptを動かすための実行環境
できること
- パソコン上で動くのでOSの機能が使える
- パソコン上で動くのでサーバーサイド用言語としても使える
Electron
- HTML/CSS + JS の知識でデスクトップアプリを作れるライブラリ
- Node.jsとChromiumがランタイム
- "Webの技術で"と紹介されることがあるが、アーキテクチャはWebと異なるので、単に"HTML/CSS+JSで"と表現したほうが誤解がないと思う
できること
- SlackとかVSCodeのようなデスクトップアプリが作れる
- 配布するためのパッケージ化が簡単にできる
- クロスプラットフォームに対応している
Express
- Node.jsのWebフレームワーク
できること
- http周りの処理が簡単に書けるようになる
- Node.js標準のhttpモジュールか、Axiosで代替可能
- ejsとかのテンプレートエンジンが使える
- Electronではテンプレートエンジン不要
- アプリ作成時に雛形を自動生成できる
- Railsの雛形ほど採用されてるわけではなさそう