【问题标题】:Flex vs. jQuery vs. GWTvs./ Closre vs. Cappuccino vs. plain JS and HTML5?Flex vs. jQuery vs. GET vs./ Closure vs. Cappuccino vs. 纯 JS 和 HTML5?
【发布时间】:2010-05-19 09:40:45
【问题描述】:

我正在创建我的第一个 Web 应用程序,我真的很困惑要采用什么技术。

我的应用程序需要看起来很严肃(像一个应用程序),它不需要很多彩色图形界面。它只需要一个工具栏、一个标签栏、一个拆分面板(最好是 3 列)、一个易于格式化的文本字段和一个状态栏。它将通过 PHP 连接到 MySQL 数据库(除非我选择 GWT)。用户将上传文件。

我对选项的评价:

Flex:可能是最容易开发的,但我很确定我的应用程序可以在 iPad 上使用,而且 Flash 在 iPad 上的未来仍不确定,我不想采用风险,否则我会选择 Flex。

jQuery:我听说过很多关于它的信息,也有很多人推荐,但我不知道它的易用性和我的应用程序外观的可定制性。

GWT:GWT 的问题在于它没有很多小部件。另一个问题是,我将不得不在 AppEngine 的数据存储中托管文件并将它们来回传输到将对它们进行操作的 Web 服务器(我需要处理它们),这会增加更多流量并减慢进程,从而恶化用户体验。

关闭:它有一个漂亮的工具栏和一个漂亮的文本字段。我不确定它使用起来有多容易。另外,我读过an article,这听起来很糟糕。

卡布奇诺:它有一个非常漂亮的用户界面,它有一个 mac 的感觉。无论如何,我打算给我的应用程序一种 Mac 的感觉,所以这将为我节省很多主题。但是如果我选择这个选项,我将无法使用 HTML5 的新功能(尤其是离线工作)。

Plain JS 和 HTML5:这给了我最大的灵活性,但也是最难做到的。

如果这是主观的,我很抱歉,但我真的需要帮助。

【问题讨论】:

  • 只是备注:您可以将 GWT 与您想要的任何后端一起使用,但您可能无法使用 GWT 为您提供的所有功能。
  • 菲利克斯所说的。使用 GWT 不需要您使用 App Engine。而且几乎所有这些选项都可以与 HTML5 一起使用(我知道至少 GWT、JQuery 和 Closure 可以)。在 2010 年几乎没有理由使用普通 JS 编写功能齐全的 web 应用程序。
  • 所以,我决定去 ajax.org。

标签: javascript jquery html apache-flex gwt


【解决方案1】:

老实说,像这样的任何问题最终都会成为每种技术的粉丝的避雷针,他们支持他们最喜欢的优点,而没有过多提及缺点。而且由于这里有很多 JQuery-ites,他们通常会超过其他人。生活吧。

每一个都试用几天,写一个简单的留言簿或一些简单但与你的实际项目相似的东西,看看哪一个感觉最简单。

【讨论】:

  • 用户数不就代表质量吗?如果更多的人对某个产品感到满意,就会有更多的人推荐它,对吧?不过,感谢您的建议,我已经搞砸了 Flex、GWT 和纯 JS(不是应用程序),我想是时候试一试其余的了。
  • 数字可以表示质量,但数字往往意味着项目较旧更受欢迎,不一定更好。但是,更多其他人使用某项技术可能意味着在出现问题时会有更多人帮助您。这不是唯一需要考虑的事情。
【解决方案2】:

在你的情况下,你应该选择 jQuery。它简单且可定制(技术上和艺术上)。它也接近于基本的“dom/js”做事方式,这是网络交互的“基础”。学习基础知识总是有益的,但通常很难得到结果。在 jQuery 中,它不是。好的,在 Ext-JS 中它会更快,但你会从 jQuery 中获得更多。它将让您更好地了解 Web 开发的工作原理。

GWT 简直太棒了,但它要求您了解 Web 开发的工作原理,考虑到这是您的第一个 Web 应用程序,这可能不是您的情况。 Google 实际上在这方面付出了很多努力,并且每个版本都在变得更好(它已经非常强大)。

在您的第一个网络应用程序中忘记 Flex。 Flex 非常简洁,但完全是另一回事。首先了解网络的工作原理在这里也很重要。

在我看来,Ext-JS 或 Dojo 太抽象了。如果你使用它们中的任何一个,你最终会擅长使用它们,就是这样。如果您想进入高级框架领域,我建议您改用 GWT。

暂时不要选择 HTML5。当所有浏览器都以 85% 以上的速度完美解释它时,这将是值得的。现在,您将限制自己使用 Safari-Chrome-Firefox。尽管所有 Web 开发人员都讨厌 IE,但它仍然拥有(不幸的是)60% 的市场份额......所以你会失去很多潜在客户。

【讨论】:

  • 我认为您使用 jQuery 的理由非常有道理,但是,我不太同意您所说的 HTML5,我的意思是即使 Google 也在使用它(通过拖放向 GMail 添加附件,放弃齿轮等)。
  • GMail的添加附件功能目前仅在Chrome上可用(这是我听说的,如果我错了,请纠正我),所以它证明了我的观点。虽然现在学习 html5 对你有好处,所以当标准发布的时候你已经很擅长了(考虑到它仍然是一个草案),但现在你会失去所有的 IE 用户。
【解决方案3】:

你检查过Ext JS吗?

或者Dojo

我会用其中之一来完成你的任务。

编辑

Ext JS toolbar demo

Ext JS tab panel demo

Ext JS layouts - 用于拆分面板检查边框布局

Ext JS text field demo

Ext JS statusbar demo

Ext JS API

Ext JS and HTML5 blog entry

Ext 拥有 OOB 所需的一切。它是纯 javascript(+css 和图像),不需要其他任何东西。 (不过,对于图表,他们使用 Flash。)

【讨论】:

  • 你只是增加了 2 个选项,增加了我的困惑,没有真正提到我为什么要考虑这些。
  • 我不太了解Dojo,但是和Ext JS差不多。
  • 嗯...自从我上次看到 ExtJS 以来,它确实有了很大的改进,现在它实际上已经足够好了。
【解决方案4】:

我不确定我是否与 iPad 有关,但...这里有一些您可能需要考虑的事情,希望您能下定决心。

JQuery - 是一个 javascript 库,你可以用它做很多事情,缺点是某些浏览器,用户可能没有启用 javascript。如果他们选择的浏览器允许 javascript,那就去吧。 Jquery 已经有一些内置主题

Flex - 如果 iPad 支持 flash 并且它是唯一的浏览器。然后去这个。因为 Flash 加载速度很慢,而且在每个浏览器上运行也不是很可靠。

至于其余的我对他们了解不多,所以再建议是错误的:)

保重

【讨论】:

  • iPad 不支持,而且可能永远不会支持 Flash 播放器。
  • 感谢您的推荐。我认为没有安装 Flash 的人比禁用 JS 的人多。
  • i-OSes 实际上可以运行 Flex 应用程序,Google 寻求解决方案。此外,Flash“并非在每个浏览器上都可靠”的想法是一种奇怪且具有误导性的评论。如果有的话,在这方面会更好,因为您在一致的 Flash VM 中运行,不需要 DOM 交互等。是的,最初加载的时间有点长,但在初始加载之后,性能通常会更好——运行为本质上,在 Flash VM 中 JIT 编译的本地应用程序具有其优势,像这样的一致平台是优势,而不是劣势。
猜你喜欢
  • 2012-09-17
  • 1970-01-01
  • 2011-08-18
  • 2013-10-19
  • 2017-08-25
  • 1970-01-01
  • 2011-07-02
  • 2013-07-19
  • 1970-01-01
相关资源
最近更新 更多