javascript - 如何编写模块化的 JavaScript 应用程序?

标签 javascript jquery backbone.js sproutcore javascriptmvc

我计划使用 HTML、JavaScript 和 CSS 重写现有的 Silverlight 应用程序。这将是一个丰富的 Internet 应用程序,仅连接到服务器以获取数据(基于 JSON 的 Web 服务)——因此不会有服务器端表示框架,例如 JSP 或 ASP.NET。该应用程序由大约 8 个屏幕组成,其中大部分采用选项卡式布局。问题是……

以模块化方式编写此类应用程序的最佳方法是什么?我想将各个屏幕编写为独立模块,仅通过事件相互通信。我还想使用某种 MVC 框架来将表示层与模型分离。

关于我应该查看哪些框架有什么想法吗?你有过良好的使用体验吗?我开始看 Backbone.js , JavaScriptMVCSproutCore .我是否遗漏了任何值得考虑的事情?

提前感谢您的宝贵时间。

附言如果您想查看我正在尝试重写的应用程序,可以使用在线演示 here - 它是为学习和比较技术而构建的真实交易应用程序。

最佳答案

我还没有机会尝试 SproutCore,但我听到了一些关于它的好消息,并希望在某个时候对其进行研究。我建议至少尝试一下 Backbone 和 Sproutcore,看看两者中哪一个更适合您的需求和您的编程风格。

我用 Backbone 做了很多工作,你的建议听起来很适合 Backbone。我的 Backbone 应用程序遵循事件驱动架构,我发现它运行良好。它使代码保持干净和分离,并允许我通过绑定(bind)到我的对象引发的事件来轻松添加功能。

那里也有很多很棒的 Backbone 教程和截屏视频。这里有一些应该有望为您提供一些您需要的信息(包括我自己的博客文章):

再说一遍,不要只选一个就决不回头。如果没有额外的框架,至少花时间在 backbone 和 sproutcore 中做一些简单的试用应用程序是值得的。

希望对您有所帮助。

关于javascript - 如何编写模块化的 JavaScript 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7257786/

相关文章:

javascript - 根据两个异步函数调用的结果进行操作

Javascript - 使用单击按钮使用隐藏的 div 中的内容填充 div

jQuery UI Datepicker - 日期范围 - 突出显示之间的日期

javascript - 将未定义的值与空字符串交换

ajax - backbone.js 的跨域 CORS 支持

django - 使用主干/ Ember 使 Django 成为一个简单的 REST API?

javascript - 给定对象 : let obj = {'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5}; Convert the keys of this object in one array, 和另一个中的值

javascript - 为什么只有所有其他 HTML 元素对 "click"使用react?

jquery - 如何在浏览器中找到元素的当前位置?

javascript - 鼠标位置分页