Skip to content
Kubo, Ryosuke edited this page Jun 15, 2024 · 8 revisions

ShogiHome は Electron を使って作られています。 Electron で作られたアプリケーションは Node.js 上で動くメインプロセスと Chromium 上で動くレンダラープロセスから構成され、それらは互いにプロセス間通信(IPC)によって連携します。 ShogiHome を構成する要素を簡略化して図示すると次のようになります。

図を Miro で開く

スクリーンショット (101)

メインプロセス側はファイルシステムや外部プロセス、 TCP などレンダラープロセス側ではできないことを担います。 一方でアプリケーション全体の状態の管理や制御、将棋のルールの実装などのほとんどはレンダラープロセスに実装されています。

レンダラープロセス側の IPC のインターフェース(図中の IPC 枠内の Bridge と書かれた箇所)は TypeScript の interface 型で定義されており、 Web 版では別の実装が使われるようになっています。

Clone this wiki locally