1

私は Linux ユーザーですが、Glade を使用して GUI を設計することをためらっています。それが生成する xml ファイルは簡単に変更できるからです。大きな問題ではないように聞こえますが、人を変えたくない商用アプリの場合はどうでしょうか?

私は時々 Mac OS X を使用していますが、GUI 用に「.nib」と呼ばれるファイルを使用していることに気付きました。基本的に、Nextstep と Openstep で使用されているものと同じタイプだと思います (これらのファイルを編集できる Linux アプリもあります)。とにかく、これらのファイルはアプリケーション バンドルに含まれており、一部の人々によると、完全に編集可能です。この人物は、Keynote のインターフェイスの編集にさえ成功したと主張しています。

では、なぜそれが可能になるのでしょうか。エンド ユーザーがインターフェイスを変更してもまったく問題ありませんか? それとも、従来の GTK アプリのように、コンパイルされたアプリケーション コードに直接 GUI を含める方がよいのでしょうか?

4

4 に答える 4

3

OS X nib ファイルは 1 つのオプションです。もう 1 つのオプションは、プログラムで処理を行うことです。Android の場合、XML ファイルで GUI を定義したり、プログラム コードで定義したりできます。Windows WPF では、UI は XML で作成されます。Firefox/Mozilla? もう 1 つの XML ベースの UI 言語である XUL。

最新の GUI ツールキットのほとんどは、これらのオプションの両方を備えているか、ファイルで UI を定義するだけです。

しかし、バイナリでさえ変更可能です。優れたバイナリ リバース エンジニアリング ツールを使用すれば、それは広く開かれています。本当に確実な唯一の方法は、Apple が iOS で行ったことを実行し、署名されたコードを実行することです。バンドル全体がキーで署名されており、変更すると実行できません。

これはほとんどの人にとって問題ではありません。UIが変更されていることを気にするのはなぜですか?基になるコードはそうではないため、機能を追加または変更することはできません。

当然の結果として (そして少し話題から外れて) あなたが正当な懸念を持っているかもしれない何かは、もう少しこのようなものです.

于 2011-01-05T18:29:34.477 に答える
1

私は本当にそれで問題を見ていません。ユーザーが UI を台無しにした場合、それはユーザーの問題です。moddable ゲームのようなものと考えてください。ユーザーは常にそれらを愛しており、最終的にはほとんどのゲームが恩恵を受けています。通常、アプリケーションのユーザー インターフェイスについて秘密はありません。ある場合は、いつでも何らかの暗号化を行うことができます。

他の人が言ったように、編集を許可しない場合は、チェックサムを追加することもできます。

于 2011-01-05T18:28:14.407 に答える
0

xml は、インターフェイスがどのように見えるかを指定するだけです。コンパイルされたイベント処理コードがなければ、ほとんど役に立ちません。私の意見では、顧客は自分の責任でそれを変更し、実際に彼らのハックから無料で有用な改善を得ることができるかもしれません.

人々がそれを変更することに本当に偏執的である場合は、xml をロードするとき、または xml 文字列をヘッダー ファイルにコンパイルするときに、いつでも MD5 ダイジェスト検証ステップまたは何かを追加できますが、それでは多くの利点が失われます。

于 2011-01-05T18:23:36.620 に答える
0

テーマ エンジンは、 Parasiteなどのツールと同様に、GUI に大幅な外観の変更を加えることができます。自己責任で Glade レイアウトを更新することは、それらのいずれよりもはるかに安全です。

とにかくユーザーが UI をカスタマイズすることの何が問題なのですか?

于 2011-01-05T18:29:59.010 に答える