web系统是否要前后端分离?

开发一个web管理系统,是否要采用如今流行的前后端分离模式?

首先要从为什么会出现前后端分离说起,前后端分离的目的

1.让前端工程师(前端)和后端工程师(后端)们能够更加专注于自己的领域

传统的开发模式是由前端负责将UI设计好的页面切成对应的静态网页,然后交由后端整合数据,实现网页的数据动态化。

这种开发模式下,前端不会去关注整个系统的业务流程是怎样的,所以导致后端在将拿到的静态页面整合成动态页面时常会出现页面展示与预期的效果不一样,需要前端不断的去调整。而后端则要痛苦的去面对一堆自己并不完全了解的前端代码,有时甚至需要自己动手写js代码。这样就造成了前端对系统理解过低,后端工作量过高,开发效率过慢的情况。

2.让后端开发一次,前端可以随意改变,减少维护成本,缩短开发时长

由于现在网页可以在各种各样的设备浏览,常见的如pc、手机等,这时就需要开发多套兼容不同设备显示的系统。而使用前后端分离的好处立马显现出来,后端只需要开发好一套数据接口,前端开发兼容各种设备的n套网页,将后端写好的数据接口对接到相应的页面上,就可以实现多种设备的浏览。有一句形象的话:“换汤不换药”,无论包装成什么样,数据还是同一套数据。不需要后端针对每一个系统都开发一次。

那么,既然前后端分离的好处这么明显,那干脆就都用前后端分离不就行了,还用讨论什么?

前后端分离固然好,但是并不是每一个项目都需要兼容若干种设备,也并不是每一个开发团队都有分工明确的前端和后端。

想象自然很美好,但是现实往往是残酷的,有时一个项目可能就只有一个开发者,这个开发者既负责前端工作,也负责后端工作,也就是所谓的“全栈工程师”。当一个项目的利润不高,为了减小成本,就只能用一个后端,由后端负责整个系统的开发,而前后端分离相当于要把原来的一套系统,拆分成两套独立的系统——前端系统、后端api系统,很显然,对于一个开发者来说,一套系统肯定比开发两套系统要更简单的多。

说到这里,结论应该很明确了,web系统是否要前后端分离?

要看实际的情况而定,假如是一个分工明确,人数多的项目团队,可以使用前后端分离,这样有利于后期维护。而如果开发人员较少,或者只需要在一种设备上显示这个时候就该考虑放弃使用前后端分离,直接使用传统的开发模式。毕竟巧妇难为无米之炊,只有合适的才是最好的。

原文地址:https://www.cnblogs.com/orrzt/p/12210908.html

时间: 2024-10-14 11:25:58

web系统是否要前后端分离?的相关文章

前后端分离后的前端时代

本文从前端开发的视角,聊一聊前后端分离之后的前端开发的那些事儿.阅读全文,大约需要8分钟. 什么是前后端分离 除了前端之外都属于后端了. 你负责貌美如花,我负责赚钱养家 在传统的像ASP,JSP和PHP等开发模式中,前端是处在一个混沌的状态中,可以说是没有独立的"人格"可言. 前端负责切图和编写静态页面模板,后端将数据渲染到前端提供的页面模板中,最后将页面渲染到浏览器展示. 这个过程中,前端只提供页面模板或者写一些JavaScript脚本,有的甚至JS脚本都是后端来写,前端的作用只局限

基于 koajs 的前后端分离实践

一.什么是前后端分离? 前后端分离的概念和优势在这里不再赘述,有兴趣的同学可以看各个前辈们一系列总结和讨论: 系列文章:前后端分离的思考与实践(1-6) slider: 淘宝前后端分离实践 知乎提问: 如何评价淘宝 UED 的 Midway Framework 前后端分离? Web 前后端分离的意义大吗? 尤其是<前后端分离的思考与实践>系列文章非常全面的阐述了前后端分离的意义和技术实现.如果不想看上面的文章,可以在脑海里留下这样一个轮廓就好: 本文主要阐述趣店团队基于Koajs的前后端分离实

关于大型网站技术演进的思考(十五)--网站静态化处理—前后端分离—中(7)

上篇里我讲到了一种前后端分离方案,这套方案放到服务端开发人员面前比放在web前端开发人员面前或许得到的掌声会更多,我想很多资深前端工程师看到这样的技术方案可能会有种说不出来的矛盾心情,当我的工作逐渐走向越来越专业化的前端开发后,我就时常被这套前后端分离方案所困惑,最近我终于明白了这个困惑的本源在哪里了,那就是这套前后端分离方案其实是服务端驱动的前后端分离方案,它的实现手段又是从服务端的MVC架构体系演化而来,因此该方案最大的问题就是它并没有从根本上改变web前端从属于服务端的被动局面.那么问题来

架构设计:前后端分离之Web前端架构设计

在前面的文章里我谈到了前后端分离的一些看法,这个看法是从宏观的角度来思考的,没有具体的落地实现,今天我将延续上篇文章的主题,从纯前端的架构设计角度谈谈前后端分离的一种具体实现方案,该方案和我原来设想有了很大的变化,但是核心思想没变,就是控制层是属于Web前端的. 在以前文章里我说道前后端分离的核心在于把mvc的控制层归为前端的一部分,原方案的构想在实际的生产开发里很难做到,我觉得核心还是控制层和视图层的技术异构性,这样后果使得系统改造牵涉面太大,导致在项目团队里,沟通.协调以及管理成本相对较高,

ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目

 一.前言 这几年前端的发展速度就像坐上了火箭,各种的框架一个接一个的出现,需要学习的东西越来越多,分工也越来越细,作为一个 .NET Web 程序猿,多了解了解行业的发展,让自己扩展出新的技能树,对自己的职业发展还是很有帮助的.毕竟,现在都快到9102年了,如果你还是只会 Web Form,或许还是能找到很多的工作机会,可是,这真的不再适应未来的发展了.如果你准备继续在 .NET 平台下进行开发,适时开始拥抱开源,拥抱 ASP.NET Core,即使,现在工作中可能用不到. 雪崩发生时,没有一

关于Web前后端分离的体验

由于公司有一个特殊的项目,以前是完全用php(smarty)写的一个程序,现在要转向php+node.因此一不小心又给后端同学们灌输了下用node做前后端分离的思想. 以前在知乎上答过这样的问题.大概如下 http://www.zhihu.com/question/26835139 由于目前正在做angular的项目,因此体验更加深刻. 现在再来说一下前后端分离的想法吧,还是有点借鉴http://ued.taobao.org/blog/2014/04/full-stack-development

springBoot 搭建web项目(前后端分离,附项目源代码地址)

springBoot 搭建web项目(前后端分离,附项目源代码地址) 概述 该项目包含springBoot-example-ui 和 springBoot-example,分别为前端与后端,前后端分离,利用ajax交互. springBoot-example-ui 前端html 技术:BootStrap + layer + jquery + css + html 该项目git地址:https://github.com/jiangcaijun/springBoot-example-ui sprin

关于Web实现前后端分离,前后端解耦

一.前言 ”前后端分离“已经成为互联网项目开发的业界标杆,通过Tomcat+Ngnix(也可以中间有个Node.js),有效地进行解耦.并且前后端分离会为以后的大型分布式架构.弹性计算架构.微服务架构.多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础. 前后端分离(解耦)的核心思想是:前端Html页面通过Ajax调用后端的RestFul API并使用Json数据进行交互. 注:[在互联网架构中,web服务器:一般指像nginx,apache这类的服务器,他们一般只

【转】Web实现前后端分离,前后端解耦

一.前言 ”前后端分离“已经成为互联网项目开发的业界标杆,通过Tomcat+Ngnix(也可以中间有个Node.js),有效地进行解耦.并且前后端分离会为以后的大型分布式架构.弹性计算架构.微服务架构.多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础. 前后端分离(解耦)的核心思想是:前端Html页面通过Ajax调用后端的RestFul API并使用Json数据进行交互. 注:[在互联网架构中,web服务器:一般指像nginx,apache这类的服务器,他们一般只