JavaScript: RIA 工具包

3

我正在寻找JavaScript RIA工具包。我的要求是:外观漂亮、免费许可证和简洁的API。有什么建议吗?

到目前为止,这就是我找到的:

ExtJS

优点

  1. 完美的外观
  2. 大量小部件
  3. 支持移动平台
  4. 模块化系统
  5. 支持HTML5和CSS3

缺点

  1. 需要付费,价格昂贵(500美元以上)
  2. 学习曲线非常平坦,没有快速入门指南(但由于第1点已经不重要了)

QooxDoo

缺点

  1. 很丑陋。看起来像90年代幸存下来的东西,一点也没有改变

Dojo

优点

  1. 外观良好(主题不多,但thundra看起来不错)
  2. 免费许可证

缺点

  1. 太过异步化(他们的AMD东西)
  2. 非常不寻常和繁琐的API,我几乎无法称之为健全
  3. 杂乱无章的文档(从#dojo irc频道中了解到了他们的AMD)

SproutCode

优点

  1. MVC
  2. 生成器
  3. 文档

缺点

  1. 我不需要的模板
  2. 没有找到在没有大量依赖项的情况下将其投入生产的方法
  3. 仍然无法弄清楚如何创建RIA而不写自己的样式和布局

Wijmo

优点

  1. 基于jQuery

缺点

  1. 需要付费
  2. 没有布局

2
我知道至少有两家商店使用Dojo,并且对它感到满意。 - MK.
2
我知道一个用汇编语言编写的CGI网站,它的作者对此很满意。 - Daniel
1个回答

4
如果你和你的团队在JavaScript方面经验不足,且不想投入时间学习前端技术,那么以下是你最好的选择(按优先顺序):
  1. Ext JS

    • 它是声明式的,具有MVP
    • 由于其GPL许可证,只要您不在组织外分发应用程序,就可以免费使用。如果您是承包商,并将代码版权移交给客户,则客户将能够在其组织内使用它。
  2. jQuery UI + 任何jQuery Grid插件(如果需要)

    • jQuery拥有庞大的社区
    • 更容易找到熟悉jQuery的人
    • 完全免费
  3. Yahoo UI

    • 良好的社区
    • 大量小部件,通过CSS进行样式设置
    • 最佳无障碍支持(如果需要)
  4. GWT

    • 基于Java(许多Java开发人员喜欢它)
    • 更难调试和构建复杂的布局

然而,我强烈建议您获得一些前端技术的知识和经验,特别是CSS。只要研究一些基本规则和模式,CSS就很容易。您不需要成为CSS大师才能熟练地进行样式和布局。

因此,如果您希望学习一些前端知识或者您已经有一些经验,我的列表将会有所不同。在选择小部件库之前,我建议您从一些MV*框架开始。

  1. Backbone
    • MVP
    • 目前的趋势领袖,庞大的社区
  2. Knockout
    • MVVM模式,数据绑定
    • 适合具有不同熟练度的大型团队
    • 与Microsoft web stack集成
  3. 还有许多其他类似于Backbone或Knockout的框架

假设您选择了一个框架,以下是您最佳的小部件选择:

  1. jQuery UI

    • 与所有MV*框架都有良好的集成
  2. Yahoo UI

    • 最佳无障碍支持

这些库非常不理想:

  1. Ext JS

    • 完全绕过了一般的网页开发实践,不尊重CSS
    • 极难定制
    • 调试更加困难
    • 在需要分发应用程序时是非免费的
  2. GWT

    • 编辑-编译-部署-测试循环时间非常长。很难快速工作。
    • 难以调试某些跨浏览器问题

可以看出,无论是 Ext 还是 GWT 都有些争议性。如果您的团队不擅长网页开发,并且不需要定制外观和感觉,则可以使用 Ext。在大多数情况下,一些教育和 jQuery UI 是更好的选择。


我知道CSS和HTML。创建布局或一些标记不是问题。问题在于实际设计。我是一个非常糟糕的设计师。不,甚至是有史以来最差的。我想从这些框架中得到的只是已经设计好的用户界面和快速学习。在Ext JS的情况下,学习需要花费很多时间,这是一个问题。 - Daniel
太好了。那就继续使用jQuery UI和Twitter Bootstrap吧,这样你就能拥有一个相当漂亮、现代化的用户界面。 - Andrei Андрей Листочкин
我不喜欢 Twitter Bootstrap 的设计。丑陋的类似苹果的克隆。 - Daniel
我推荐使用Bootstrap并非因为它的样式,而是因为它非常可定制化。只需更改LESS中的几个变量,您就可以得到您喜欢的设计。 - Andrei Андрей Листочкин

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接