最适合移动开发的JavaScript MVC框架是什么?

13

当我说移动开发时,我既指浏览器中的开发,也指编译到PhoneGap中的开发。

我正在尝试比较JS MVC框架的性能数据。我已经搜索了这方面的资料,但是当你搜索“移动、JS和框架”时,你只会得到Sencha、jQuery Mobile、Titanium等链接。

我特别指的是MVC框架,例如:

Ember
Backbone
Spine
Knockout
JavaScript MVC
Batman
Blossom
etc.

我希望看到包含这些内容在移动浏览器和PhoneGap中的性能指标链接。


我一直在研究Sencha Touch,它似乎提供了完整的MVC+UI框架。虽然我还在试玩中,但看起来是一个值得考虑的好选择。我也查看了backbone.js,并发现一些人对其进行了一些调整以使其与jQuery Mobile配合使用。 - Eldelshell
4个回答

5

另外值得一看的是AngularJS。它是一个完整的Javascript框架,由一些Google员工创建,并拥有不断增长的社区。使用它真的很有趣!


3

我建议您查看这个教程使用Backbone.js和jQuery Mobile
它解释了如何覆盖JQM路由系统,以便使用Backbone.js提供的更好的路由系统来处理它。
昨天我发现了这篇分析10个我转向Spine.js的原因,从中可以得到一些关于Spine.js和Backbone.js之间差异的观点。
然后,如果您喜欢指标,可以查看不同的JS模板引擎性能比较
我理解在使用JQuery Mobile时的担心,因为性能在所有设备上都不好,但据我所知,它是唯一一个适用于所有移动平台(而不仅仅是在webkit上)并且能够优雅地降级到不支持的浏览器的框架。
总之,我认为没有一种解决方案是最好的,这取决于您想要实现什么目标。


2
我没有试过所有的框架,但我已经研究了这个主题,并最终选择使用 Backbone JS。到目前为止,我非常满意它的简单性和功能强大。我非常喜欢能够阅读源代码(只有6kb压缩后!)并理解它在说什么。
我开始使用Trigger.io的教程(一个类似于PhoneGap的本地应用包装器制造商)构建基于Backbone的移动优化应用程序。我对其进行了修改以适应自己的目的,例如使用CSS转换而不是(慢速)JavaScript动画。
我创建了一个可扩展的Backbone.View.MobileView对象,可以快速轻松地构建移动优化应用程序。我一直想将其发布到gist上,但它仍需要进行很多清理。如果您想要一个草图版本作为参考,我很乐意分享。
另外一个注意事项 - 我会尽量避免使用jQuery Mobile。除了联合jQuery和jQuery Mobile框架的巨大开销外,您会发现您的代码和样式在每个转折点都被覆盖。从我发现的情况来看,在页面之间使用AJAX传递数据到服务器非常麻烦。
移动优化应用程序是Web开发的野蛮西部,特别是在与类似PhoneGap的服务集成时。请与我们分享您所学到的知识!
祝你好运!

4
"我会尽量避免使用jQuery Mobile。这难道不会让你自己开发适用于每个设备屏幕大小的移动UI吗?似乎jQuery Mobile已经完成了很多工作。" - Eldelshell
2
我不同意“不惜一切代价避免使用jQuery Mobile”的说法。它并非适用于所有情况的解决方案,但对于某些情况来说确实是完美的解决方案。它可以为您处理所有事情:用户界面、路由、渲染等等。 - commadelimited
1
PhoneGap的共同创始人Brock Whitten指出,jQuery Mobile是在HTML5创建移动应用程序时可以犯的最简单和最大的错误之一。http://sintaxi.com/you-half-assed-it - Joseph Ravenwolfe
你好,如果您能分享您修改过的BackBone版本,将会非常有帮助。谢谢! - a.boussema
教程链接似乎已经失效。 - lorefnon

0

我认为spine.js和knockout.js都很不错

但是它们两个都稍微有些复杂

请告诉我你用的是哪一个


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