【エレクトロン】

Electron(エレクトロン) とは?

公開:
💡 Webの技術でデスクトップアプリが作れる魔法の箱
📌 このページのポイント
Electron の構成とマルチOS対応 Electron Chromium HTML / CSS / JS 画面の描画 レンダラープロセス Node.js ファイル操作 OS機能アクセス メインプロセス Windows macOS Linux 採用アプリ VS Code Slack Discord Notion 注意点 バイナリ 100MB+ メモリ消費大 起動やや遅い
Electronの構成とマルチOS対応のイメージ
ひよこ ひよこ
デスクトップアプリって、普通は専用の言語で作るんじゃないの?
ペンギン先生 ペンギン先生
昔はそうだったんだ。WindowsならC#、macOSならSwiftっていう具合にね。でもElectronが登場してからは、HTMLCSSJavaScriptだけでどのOSでも動くアプリが作れるようになったんだよ
ひよこ ひよこ
どうやってWebの技術でデスクトップアプリになるの?
ペンギン先生 ペンギン先生
Electronの中にはChromiumっていうブラウザエンジンとNode.jsが入っていて、アプリの画面はWebページと同じ仕組みで描画されるんだ。さらにNode.jsでファイル操作やOS機能にもアクセスできるから、普通のブラウザではできないことも可能になるよ
ひよこ ひよこ
VS CodeもElectronなんだ!すごく軽快に動く気がするけど…
ペンギン先生 ペンギン先生
そうなんだ。MicrosoftがかなりチューニングしてるからVS Codeは快適だけど、実は裏でChromiumが動いているんだよ。ただ、Chromiumを丸ごと含むからアプリのサイズが100MB超えになりやすいのが弱点だね
ひよこ ひよこ
メモリもたくさん使うの?
ペンギン先生 ペンギン先生
うん、Chromiumのプロセスモデルを引き継ぐから、メモリ使用量は多めになるよ。Slackを開いてるだけで数百MBということもある。そこが課題で、最近はTauriのようなより軽量な代替フレームワークも注目されているんだ
ひよこ ひよこ
じゃあElectronはもうオワコン?
ペンギン先生 ペンギン先生
いやいや、まだまだ主流だよ。エコシステムが巨大で、プラグインやツールが豊富だし、実績のあるアプリが多いから安心感がある。セキュリティアップデートも活発だし、用途に応じてElectronとTauriを使い分けるのが今のトレンドだね
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Electron」って出てきたら「Web技術でデスクトップアプリを作れるフレームワーク」と思えればだいたいOK!
📖 おまけ:英語の意味
「Electron」 = 電子
💬 もともとはGitHubがAtomエディタ用に開発した「Atom Shell」が前身で、2015年にElectronに改名されたよ。電子のように軽やかにプラットフォームを飛び回るイメージだね
← 用語集にもどる