トップQs
タイムライン
チャット
視点

Electron (ソフトウェア)

クロスプラットフォームなデスクトップアプリケーションを製作するためのフレームワーク ウィキペディアから

Electron (ソフトウェア)
Remove ads

Electron(旧称はAtom Shell[5])とはGitHubが開発と管理をしている、フリーでオープンソースソフトウェアフレームワークである[6]。Electronにより、ChromiumレンダリングエンジンとランタイムのNode.jsとを組み合わせたWeb技術を用いたデスクトップGUIアプリケーションの開発が可能となる[7]。Electronは、AtomGitHub DesktopLight TableVisual Studio CodeEvernote[8]、およびWordPress Desktop[9]などのオープンソースプロジェクトの基盤となる中心的GUIフレームワークである。

概要 作者, 開発元 ...
Remove ads

アーキテクチャ

Electronアプリケーションは複数プロセスで構成されており、1つの「メイン」プロセスと複数の「レンダラー」プロセスが存在する。メインプロセスがアプリケーションロジックを実行すると、レンダラープロセスを複数起動できるようになる。レンダラープロセスはユーザー画面に表示されるウインドウへ、HTMLCSSをレンダリングする。

可能ならば、メインプロセスとレンダラープロセスは共にNode.jsと統合して起動できる。

ElectronのAPIは、ほとんどC++Objective-Cで書かれており、JavaScriptバインディングを通じてアプリケーションコードに直接公開される[10]

セキュリティ

ElectronアプリケーションはChromiumエンジンで起動するウェブアプリケーションである。そのため古いバージョンのElectronを使用してしまうと、ブラウザ(Chromiumなど)や他の内部コンポーネント (Node.js) と同じ攻撃ベクトルによるクロスサイトスクリプティングなどのウェブ関連攻撃に対して脆弱となる[11]。前述の脆弱性は、Electronの1.7.13、1.8.4、および2.0.0-beta.5で修正されている[12]

批判

Electronアプリケーションは、類似した機能のネイティブアプリケーションよりも巨大なオーバーヘッド英語版が発生してしまうことを批判されている。Electronでビルドされたアプリケーションは、オペレーティングシステムネイティブな技術でビルドされた類似のアプリケーションよりも大量のストレージとRAMを消費してしまうため、動作が遅くなる可能性が高い[13][14][15]。代替案として、Chromiumをバンドルするのではなく、オペレーティングシステムに内蔵されたブラウザを使用する方法が記述されている[16]

バージョン

さらに見る リリース, 状態 ...
Remove ads

Electronを利用したソフトウェア

以下のソフトウェアを含む、数多くのデスクトップアプリケーションがElectronで作られている[17]

Remove ads

関連項目

脚注

Loading content...

外部リンク

Loading content...
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads