-
Notifications
You must be signed in to change notification settings - Fork 22
Kubo, Ryosuke edited this page Jun 15, 2024
·
8 revisions
ShogiHome は Electron を使って作られています。 Electron で作られたアプリケーションは Node.js 上で動くメインプロセスと Chromium 上で動くレンダラープロセスから構成され、それらは互いにプロセス間通信(IPC)によって連携します。 ShogiHome を構成する要素を簡略化して図示すると次のようになります。
メインプロセス側はファイルシステムや外部プロセス、 TCP などレンダラープロセス側ではできないことを担います。 一方でアプリケーション全体の状態の管理や制御、将棋のルールの実装などのほとんどはレンダラープロセスに実装されています。
レンダラープロセス側の IPC のインターフェース(図中の IPC 枠内の Bridge と書かれた箇所)は TypeScript の interface 型で定義されており、 Web 版では別の実装が使われるようになっています。