配信面はアーキテクチャを決定しない
ブラウザ アプリは、すべてのファイルをアップロードしたり、すべてをローカルで処理したりできます。デスクトップ アプリはオフラインで動作することも、クラウド アカウントが必要な場合もあります。 「Web」と「デスクトップ」は、自動的なプライバシーや所有権ではなく、配信と統合の面を表します。
プライバシーはデータフローに依存します
ローカル ブラウザ ユーティリティは、コンテンツをサーバーに送信せずに、JavaScript、WebAssembly、およびワーカーを使用できます。依然として、提供されたコード、ブラウザー、拡張機能、デバイスのセキュリティ、およびネットワークの動作に依存しています。デスクトップ ソフトウェアはデータをローカルに保持し、より多くの OS 機能にアクセスできます。また、テレメトリを収集したり、機密情報を不適切に保存したりする可能性もあります。
実績と権威
| Workload | Fit | Reason |
|---|---|---|
| 小さなファイル/テキストの変換 | Browser | 高速な起動と十分なローカル コンピューティング |
| 長いバックグラウンドの自動化 | Desktop | ブラウザはタブを一時停止し、バックグラウンドでの動作を制限します |
| 大規模メディアプロジェクト | Desktop | メモリ、ストレージ、コーデック、持続的な処理 |
| ポータブルなワンタスクユーティリティ | Browser | インストール不要でクロスプラットフォーム配信も可能 |
| グローバルキーボードオートメーション | Desktop | OS 入力アクセスが必要です |
| ブラウザインスタンスの管理 | Desktop | パス、プロファイル、プロセス、起動が必要 |
オフラインにはレベルがあります
ブラウザー アプリは読み込み後にローカルで処理できますが、最初のアクセス、更新、ライブラリ、またはモデル ファイルには接続が必要です。 Service Worker はアセットをキャッシュできますが、ストレージの削除とブラウザーのポリシーが重要です。ポータブル デスクトップ ソフトウェアは、リモート サービスに依存しない場合、オフラインでも使用できます。
ファイルと永続性
ブラウザ API により、ユーザーが選択したファイルへのアクセスとダウンロードが可能になります。一部のブラウザは、許可付きのより豊富なファイル システム アクセスをサポートしています。デスクトップ ソフトウェアは、ディレクトリを監視し、既知のパスに保存し、大きなファイル ツリーにアクセスできます。権限が大きくなるとリスクも大きくなります。デスクトップ プログラムがプロファイル、ログ、一時データを保存する重要なブラウザ作業とドキュメントをエクスポートします。
アップデートとサプライチェーンのリスク
迅速な修正と 1 つのライブ バージョンに加え、集中的な導入リスク。
オフライン コピーと制御されたロールアウトに加え、断片化と古いバージョン。
Jivaro が両方を使用する理由
Jivaro のブラウザ アプリは、PDF 編成、OCR、テキスト変換、画像処理、QR 生成、正規表現テスト、マークダウン編集などの制限されたワークフローを解決します。 AutoQuill は、制御された入力には Windows 入力動作が必要なため、デスクトップ ソフトウェアです。 Instanciar は、Chromium パス、プロファイル、プロセス、およびプロキシでサポートされる起動を管理します。
明示的なファイルの選択とエクスポートで十分な場合は、ブラウザを使用してください。ワークフローで永続的なバックグラウンドまたはオペレーティング システムへのアクセスが本当に必要な場合は、デスクトップ ソフトウェアを使用します。
決定に関する質問
- データはデバイスから流出しますか?
- コア ワークフローはアカウントなしで実行できますか?
- どのような権限が必要ですか?
- ユーザーはエクスポートとバックアップを行うことができますか?
- バックグラウンドで作業を続行する必要がありますか?
- 現実的な最大のバッチはどれくらいですか?
- 更新はどのように配信され、ロールバックされますか?
- どのプラットフォームをサポートする必要がありますか?
- 販売者がいなくなったらどうなるのでしょうか?
総コストにはサポートと障害モードが含まれます
ブラウザ配信により、インストールのサポートは減りますが、ブラウザ間のテストと一元化された展開の責任が増加します。デスクトップ ソフトウェアは、パッケージ化、コード署名、ウイルス対策評価、バージョン サポート、更新チャネルを追加します。開発作業だけではなく、ライフサイクル全体を見積もります。
モデルごとに、サポートされている最大のワークロード、失敗した操作からのリカバリ、ログの保存場所、ユーザーがデータをエクスポートする方法、および古い作業バージョンを復元する方法を文書化します。
多くの場合、ハイブリッド アーキテクチャが解決策になります
ローカル デスクトップ ヘルパーが継続的または特権的な作業を実行している間、ブラウザ インターフェイスは構成と軽量のプレビューを処理できます。デスクトップ アプリは、ドキュメントや更新に Web コンテンツを使用できます。ハイブリッド設計は、機能によって正当化される必要があります。そうしないと、2 つの導入面とセキュリティ面を組み合わせることになり、十分なメリットが得られません。
よくある質問
自動的ではありません。アップロード、ネットワーク リクエスト、ストレージ、権限を確認します。
アセットとデータがキャッシュされている場合は可能ですが、最初のロード、更新、および削除は信頼性に影響を与える可能性があります。
制御された入力とターゲットの対話には、Windows レベルの入力動作が必要です。
ジョブを完了し、データ フローとリカバリを明示的に行う、最小権限の環境を選択します。
出典と参考文献
- ファイル システム APIMDN Web ドキュメント · リファレンス
- Service Worker APIMDN Web ドキュメント · リファレンス
- WebAssemblyXXQPH0002QXZWebAssembly コミュニティ グループ · リファレンス
- ローカルファースト ソフトウェアXXQPH0002QXZジバロ · ファーストパーティ
- AutoQuillXXQPH0002QXZJivaro · ファーストパーティ
- インスタントXXQPH0002QXZジバロ・ファーストパーティ

