プラットフォームネイティブUI

各OSのUIフレームワーク・APIを直接使用して構築されたUI。Electron・Flutterなどのクロスプラットフォームフレームワークとはトレードオフの関係にある。

クロスプラットフォームUIとの対比

クロスプラットフォームアプローチ

全プラットフォームで統一されたUIを一つのコードベースで実現する。

プラットフォームネイティブアプローチ

各プラットフォーム向けにUIレイヤーを別々に実装する。

ネイティブUIが提供するもの

macOSを例にすると:

ゼロコンフィグ性との関係

プラットフォームネイティブUIは、ゼロコンフィグ設計と親和性が高い。OSの慣例に従うことで、ユーザーが「学習コストなしに使える」状態を作りやすい。クロスプラットフォームUIでは、OSの慣例から外れた独自の操作体系を学ぶコストが生まれる。

共通コアとの分離

Ghosttyのアーキテクチャのように、ターミナルエミュレーションロジック(共通コア)とUIレイヤーを分離することで、プラットフォームネイティブUIの恩恵を受けながら、コアロジックの重複を避けられる。

関連