Model view controller 在客户端和服务器端使用MVC模式

Model view controller 在客户端和服务器端使用MVC模式,model-view-controller,backbone.js,Model View Controller,Backbone.js,我花了几天的时间试图找到在客户端和服务器中使用MVC模式的理由。 我目前正在服务器端使用MVC框架,并创建了一个RESTfull api。 我已经使用 Javascript MVC框架如何在不打破枯燥规则的情况下改进此功能,在客户端和服务器代码中重复使用模型和视图(模板)?对于这一特定示例,这无疑是一个过火的问题,使用简单的Javascript/jquery会更好 但是,将javascript/jquery的数量增加到大约500行。看起来怎么样?可管理的1000-2000 LOC怎么样?现在,您

我花了几天的时间试图找到在客户端和服务器中使用MVC模式的理由。 我目前正在服务器端使用MVC框架,并创建了一个RESTfull api。 我已经使用


Javascript MVC框架如何在不打破枯燥规则的情况下改进此功能,在客户端和服务器代码中重复使用模型和视图(模板)?

对于
这一特定示例,这无疑是一个过火的问题,使用简单的Javascript/jquery会更好

但是,将javascript/jquery的数量增加到大约500行。看起来怎么样?可管理的1000-2000 LOC怎么样?现在,您希望将所有代码组织为对象(类:)和方法,这些对象和方法可以像后端服务的组织方式一样相互通信。嗯…那又怎样?好了,我来营救你!它有助于将代码组织到MVC(C)范例中(后者是
集合
)。因此,您可以将代码组织和事件驱动的通信作为框架的一部分,并且您希望前面的2k行代码最初是以这种方式组织的

那么,脊梁骨给了你什么?规范组织和预防意大利面。事实上,您可以使用类似UML的分析(类图等)来分析和设计应用程序的“前端”,并使其更易于维护

所以你想问的问题是,这值得吗?这取决于您期望的javascript数量和前端的范围/大小。正如@jake所指出的,将客户机/服务器看作是在不同领域中运行是有帮助的


祝你好运

假设客户机和服务器是两个独立的应用程序,其中服务器只关心处理数据库和处理数据请求,而客户机只关心向用户呈现数据,获取用户输入并与服务器通信这里的要点是服务器和客户机运行在不同的领域,通常使用不同的编程语言,因此需要单独但重叠的数据模型,而不是符合DRY。感谢您的回答。这是关于案件的,因为它总是这样。
<script id="housestemplate" type="text/x-jquery-tmpl">
    <li><a href="#" onclick="gethouse({{:house.id}});">
        <h3>{{:house.house_type.type}}</h3>
        <p>{{:house.area}} {{:house.bedroom_num}}</p></a>
</script>
        $.ajax
        ({
            type:"GET",
            url: url ,
            success:function (data) {
                $("#renderHouse").html($("#housestemplate").render(data));
            }
        });