Chr*_*det 4 model-view-controller web-applications backbone.js
我想知道Javascript MVC框架的目的,如Backbone.js和Spine.js.作为一个狂热/经验丰富的Ruby on Rails开发人员,我从来没有一个有用的案例,我需要为我的应用程序提供另一个MVC层.这对我来说似乎很愚蠢.我大量使用不显眼的Javascript来处理事件和错误处理逻辑,但它没有为我的视图创建类和视图.
请原谅我在这方面的无知,但我肯定希望得到经验丰富的开发人员的回答.
sgh*_*ill 12
像Backbone.js这样的JavaScript MVC框架用于向前端添加结构.
这在构建[越来越受欢迎的]单页JavaScript应用程序(SPJA)时非常有用.如果你大量使用不引人注目的JavaScript,你可能会为动态内容做大量的ajax,以避免刷新用户的页面.SPJA更进一步,让用户访问应用程序的所有区域,而无需刷新页面.如果没有MVC框架提供的结构,客户端代码很快就会失控.
如果您的 Web 前端只是表示层,即,拥有双 MVC 绝对是多余的。视图和所有数据以及应用程序逻辑都驻留在服务器上。
然而,许多现代复杂的 Web 应用程序试图通过创建高度交互的前端来最大化用户体验,这些前端使用 Ajax 或类似的替代方案与服务器动态通信,例如。闪存 AMF。在这种情况下,在应用程序的前端,分离处理与服务器实际通信的脚本部分,为管理已在客户端系统中获取/缓存的本地数据、用户交互事件处理和历史管理提供适当的规定。一旦你开始考虑它,你很快就会发现在 javascript 代码中有一个单独的 MVC 层是一个好主意,因为它非常适合场景并使代码易于管理。
例如,在像 Facebook 这样的应用程序中,用户交互事件,例如放大图片时按 L,或者单击 Like 按钮实际上映射到相同的操作,因此该操作应该与构建视图和附加事件的部分分离处理程序。实际将更新的元数据信息发送到服务器可以再次分离,因为这部分可以重新用于更新需要传送回服务器的元数据的任何操作。类似地,元数据的验证可跨更新元数据的不同用户操作重复使用。
通过这个例子,我希望已经传达了 MVC 设计如何适应 Web 前端的概念。
| 归档时间: |
|
| 查看次数: |
1549 次 |
| 最近记录: |