我是学习MVC的新手。
我想知道是否存在一种启发式(非编程方式)用于划分和决定前端与后端相比的逻辑,特别是在使用像backbone.js这样的前端库时。 / p>
也就是说,像backbone.js这样的库将数据与DOM元素分开,这使得它可以用于创建复杂的客户端逻辑,这些逻辑可能曾经在服务器端执行。
提前致谢 乔伊
答案 0 :(得分:2)
“经典”的方式做模型 - 视图 - 控制器是在服务器上拥有所有三个。然后,浏览器呈现HTML和一些JS的View层输出。
Rails就是一个很好的例子。
“新酷”方式是将浏览器视为主要计算引擎,后端服务器通过API提供services
。
在这种情况下,Model,View和Controller软件都在客户端上运行(如Javascript或coffeescript)。 Backbone通常是浏览器端解决方案的一部分,但它有诸如spine,angularJS等替代方案。
在后端服务器上,运行dbms和一个好的API系统。在Ruby / Rack上构建了一些很好的框架。请参阅Daniel Doubrovkine在code.dblock.org上发表的文章。您有很多选择。
MVC在客户端的优势
<强>缺点强>
<强>选择强>
这取决于你。决定取决于您的时间范围,资源,经验,需求等。不需要使用主干或类似。这样做是一种权衡(见上文)。不使用它总是更快/更容易,但没有它(或类似)可能无法实现您的目标。
您可以使用Rails构建一个出色的MVC应用程序,或者使用附加库或其他MVC解决方案构建PHP。
答案 1 :(得分:1)
我认为你在非程序化的意义上使用启发式这个词是正确的吗?即你用它来表示“经验法则”的某些内容吗?
根据经验:
外卖是模糊的,但却是正确的:这完全取决于权衡,你必须决定你的产品需求是什么。
答案 2 :(得分:0)
我想到的前两件事是安全和安全。搜索..