【问题标题】:C++ Adobe source libraries impressions? [closed]C++ Adob​​e 源库印象? [关闭]
【发布时间】:2010-02-01 20:52:17
【问题描述】:

我刚刚偶然发现了 Adob​​e 源库,ASL。它是一组类似于 boost 的模板和功能,在 MIT 许可下。 我发现库中的一些实用程序非常有用,现在我考虑使用它。

不过,这个库看起来很简单。

  • 您自己使用过 ASL 吗?如果有,你的印象是什么?你推荐它吗?
  • 它是否适用于一系列编译器和平台,例如IBM C++、ICC、g++?
  • 您是否遇到过怪癖/意外情况?

谢谢

【问题讨论】:

标签: c++ asl


【解决方案1】:
  1. ASL 大量使用 Boost,因此它与 Boost 不太相似,因为(在某些情况下)是一个相对较薄的 Boost 包装器。
  2. ASL 的“大”部分是亚当和夏娃。其余的大部分似乎(如果没记错的话,真的是)只不过是对这些的支持而已。
  3. ASL 已经有一段时间没有更新了,如果我没记错的话,它在围绕 Boost 的包装器中提供的一些内容现在已被合并到 Boost 库本身中(大多数 Boost 作者至少从那时起就知道 ASL他们出现在 Sean Parent 在 Boostcon 1 上的主题演讲中)。

我自己对它们的体验有些复杂。有一次,我使用了一些他们的 Boost-wrapper 类,但是 IIRC,在下一两个版本中,我关心的位在没有任何包装器的情况下在 Boost 中可用(虽然临时,我不记得确切是什么那些碎片是……)

Adam 和 Eve 很适合玩不同的 UI 布局等——但我从未将它们用于完成程序的版本。至少在我看来,它们主要用于相对复杂的 UI。我的印象是,如果您发现它们非常有用,您的 UI 可能需要改进。如果您需要 Adam 和 Eve 帮助了解发生了什么,您的用户很可能也无法弄清楚。

OTOH,至少在少数情况下,对话框对用户来说是清晰的,但对于开发人员来说,代码就不太清楚了。如果您在其他控件中输入了值之前禁用了一些控件,这样可以更轻松地确保在输入了它们所依赖的所有值之前禁用控件。

【讨论】:

    【解决方案2】:

    如前所述,ASL 的重点是亚当和夏娃,其余的只是方便的工具。

    Adam 和 Eve 合作以跨平台的方式描述具有自动布局的 UI。 如果这不是您所需要的,那么您可能不应该在 ASL 上花费太多时间。

    Eve 具有用于自动布局的典型垂直/水平/其他容器集合。

    使用 Adam 编写脚本可以让您实现仅使用布局容器难以实现的事情(如果不是不可能的话)(例如,让不同的控件组保持相同的大小)。

    没错,您在 C++ 代码中实现了一些规则。但是将与 UI 行为相关的 UI 描述规则存储在您开始存储 UI 的相同位置是有意义的。

    【讨论】:

      猜你喜欢
      • 2019-06-21
      • 2010-09-23
      • 2020-05-26
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      • 2011-05-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多