9

アドビのソースライブラリであるASLに出くわしました。これは、MITライセンスの下で、ブーストと同様のテンプレートと機能のセットです。ライブラリ内のユーティリティのいくつかは非常に便利だと思ったので、今はそれを使用することを検討しています。

ただし、ライブラリは非常に単純なようです。

  • 自分でASLを使用したことがありますか?もしそうなら、あなたの印象はどうでしたか?あなたはそれをお勧めしますか?
  • IBM C ++、ICC、g ++などのさまざまなコンパイラやプラットフォームでうまく機能しますか?
  • 癖/予期しないことに遭遇したことがありますか?

ありがとう

4

2 に答える 2

9
  1. ASLはBoostを多用しているため、(場合によっては)Boostのラッパーが比較的薄いため、Boostとはあまり似ていません。
  2. ASLの「大きな」部分は、アダムとイブです。残りのほとんどは、それらのサポートにすぎないように見えます(そして、メモリが役立つ場合は、実際にはそうです)。
  3. ASLはしばらく更新されていません。間違いがなければ、Boostのラッパーで提供されるものの一部がBoostライブラリ自体に組み込まれています(ほとんどのBoost作成者は、少なくともASLがBoostconでのSeanParentの基調講演1)。

私自身の彼らとの経験は多少混ざっています。かつて、私はいくつかのBoostラッパークラスを少し使用していましたが、IIRCは、次のリリースまたは2つで、私が気にしたビットがラッパーなしでBoostで利用可能になりました(ただし、正確には覚えていません)それらの作品は...)

アダムとイブは、さまざまなUIレイアウトなどをいじくり回すのにちょっとクールですが、プログラムの完成版にそれらを使用したことはありません。少なくとも私には、これらは主に比較的複雑なUIで役立つようです。私の印象では、それらが非常に便利であることがわかった場合、UIはおそらく作業が必要です。何が起こっているのかを理解するためにアダムとイブが必要な場合、ユーザーも理解できない可能性があります。

OTOH、ダイアログがユーザーにとって明確である場合はおそらく少なくともいくつかありますが、コードは開発者にとってはそれほど重要ではありません。他のコントロールに値が入力されるまで一部のコントロールを無効にするなど、多くの場合、依存するすべての値が入力されるまでコントロールが無効になっていることを確認するのがはるかに簡単になります。

于 2010-02-01T21:45:48.960 に答える
4

すでに述べたように、ASLの全体的なポイントはアダムとイブであり、残りは単なる便利なツールです。

AdamとEveは協力して、クロスプラットフォームの方法で自動レイアウトを使用してUIを記述します。これが必要なものでない場合は、おそらくASLに多くの時間を費やすべきではありません。

Eveには、自動レイアウト用の垂直/水平/その他のコンテナーの典型的なコレクションがあります。

また、Adamを使用したスクリプトを使用すると、レイアウトコンテナーだけでは(不可能ではないにしても)困難なことを実現できます(たとえば、コントロールの個別のグループを同じサイズに保つなど)。

確かに、C++コードにいくつかのルールを実装します。ただし、UIの動作に関連するUI記述ルールを、最初にUIを保存するのと同じ場所に保存することは理にかなっています。

于 2010-02-03T09:42:33.893 に答える