3

Adobe が Photoshop クロスプラットフォームをどのように作成しているか知りたいのですが? Photoshop が完全に C++ で書かれていることは知っていますが、GUI はどうですか? アドビは GUI ツールキットを使用していますか?

4

2 に答える 2

4

ネイティブにコンパイルされたクロスプラットフォーム プロジェクトの場合、解決策は通常、特定のプラットフォーム専用に記述された「ラッパー」と呼ばれるコードの小さな部分を持つことです。これらのラッパーは、プラットフォームと直接やり取りします。

これにより、Photoshop のようなアプリがマルチプラットフォームになりますが、Adobe がラッパーを作成していないプラットフォーム上に構築されるとは限りません。

于 2010-10-24T20:38:42.197 に答える
1

クロス プラットフォーム ソフトウェアを作成するのは面倒ですが、簡単なルールを次に示します。

一般に、基盤となる OS / 環境の抽象化を使用して作業する必要があるため、コードは OS 自体ではなくこの抽象化に依存します。これをブリッジパターンと呼びます。プログラムと OS の間のブリッジに機能を追加すればするほど、ソフトウェアの移植が難しくなることを理解することが重要です。Adobe の場合、独自の UI とテキスト処理があるため、OS の比較的小さな部分 (小さなブリッジ) を使用するため、マウス/キーボード入力をキャプチャしてウィンドウに描画できるようにするだけで済みます。

于 2013-11-29T16:34:22.363 に答える