gpt4 book ai didi

ruby-on-rails - 客户端 MVC 而不是服务器端 MVC

转载 作者:行者123 更新时间:2023-12-02 00:08:03 25 4
gpt4 key购买 nike

与其使用像 Ruby、Python、PHP 这样的服务器端 MVC 来构建非常复杂的网站,为什么我们不应该将我们的网站拆分成多个模块,然后使用像 backboneJS、EmberJS 这样的客户端 MVC 来构建每个模块。在这种情况下,我们将使用 PHP/Ruby 单独创建网络服务,这将仅提供数据。

每个模块现在都充当小型网络应用程序。如果我们将彼此链接起来,它们看起来就像一个复杂的网络应用程序。

我访问了很多网站(比如 github、groupon、stackoverflow 等),它们都可以构建或采用这种方法。但我没有看到这种方法。这种方法在这类网站上有什么问题吗?

最佳答案

太想发表评论了

我想棘手的部分确实是你提到的那一点

f we link each other, they will perfectly look like a complex web app.

因为每个 MVC 框架都使用不同的方法来解决您在现代网络应用程序中遇到的常见问题,例如路由数据绑定(bind)应用程序状态呈现 DOM 元素,所以我认为您最终会拥有多个框架执行大量重叠的任务,从而迫使您停用或禁用一个或另一个框架的某些内置功能,从而使您的 frankenstein-app :) 很难维护。

一个很好的例子是 jQuery-mobile 和 ember.js,它们都有一个路由系统,jQuery 使用 DOM 来保存状态 ember.js 完全在 javascript 中保存它的状态,这要快得多。我在使用 jQuery-mobile 和 ember.js 的项目中遇到了类似的问题,这迫使我决定使用其中一个路由系统,我使用了 ember 并停用了 jQuery,然后只使用了一堆自定义移动组件jQuery-mobile 的一面。最后,我删除了仅使用 ember.js 的 jQuery-mobile 和移动外观应用的 CSS。

如果不是因为具体要求,恕我直言,您最好的选择是只有一个非常好的、灵活的和自以为是的框架(我个人更喜欢ember. js) 并根据您的唯一选择创建您提到的模块。

希望对您有所帮助。

关于ruby-on-rails - 客户端 MVC 而不是服务器端 MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17170026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com