聊一聊web开发的前后端分离和页码分离

来源:互联网 发布:西门子plc编程软件v14 编辑:程序博客网 时间:2024/06/05 17:43

我一直对web非常感兴趣,在这个APP为主导的时代,我依然觉得未来的社会是属于浏览器的。

不过今天不说浏览器,说说web中的前后端分离和页码分离,可能题目看起来怪怪的,因为【前后端分离】和【页码分离】看上去是一个概念。

实际上,前后端分离指的是后端代码和前端代码的分离,页面分离是指在前端页面上html元素和js代码的分离(也包括前者)。

ps:没必要纠结概念问题。

言归正传,先说说什么是前后端分离,最理想的前后端分离是:

前端专门负责前端,即便是没有后台,前端也能正常显示;

后端专门负责数据,除了处理数据,什么页面拼接,这种事我都不做,我只负责接收请求,返回数据(或结果);

这么看起来前后分离是一件非常棒的事呀,如果你是老板,你可能一下就发现了其中的好处,那就是效率成倍的提升,不仅仅如此,如果按照这种理想的状态,就连交互性等等都会非常非常的棒!

But!但是!

你需要面对的问题就很多了,【JS的加载顺序】【前端的模板技术】【ajax动态加载技术】【如何记录用户】【当cookie禁用时怎么办】【如果用户修改信息,cookie怎么办】【如何在前端防止XSS攻击】【如何防止CSRF攻击】...

大多数公司对新技术的接受能力都很有限,就算喜欢新技术,当面对以上的问题的时候也很头疼,尤其是当cookie被警用时,你真的就呵呵了~

所以,即便是前后端分离有很多好处,但大多数公司还是选择了不分离,对了,还有个原因:老板不在乎方式,主管害怕变数。

说完了前后端分离的利弊,再看看前后端不分离的利弊,好处:

很多时候可以不招前端,几个phper完成一切;

嗯...还有...嗯...我想不出来了;

还是说说坏处吧:

页面拼接这种小事要后端来做;

后台模板循环往tpl里赋值;

有人用后端给JS变量赋值(这事我在N个模板中看到了);

基本上JS能做的事一半都交给了后端做,以前跟一个朋友聊天,他是做前端的,我们聊分页的时候,他跟我说分页的页码‘显示’应该是后台来做的,就是那个我们经常看到的分页下面有个【上一页,2,3,4,5,下一页】这个东西的显示逻辑要后台来做。其实这种事不怪我那朋友,公司就是那么做的,他一个前端也改变不了大况。类似这种事经常会出现在目前的web开发中,但是大家体会不到这样做和不这样做的差别。因为公司不大访问量也不多,即便访问量大,那大不了就增加服务器的性能呗,在前期服务器的性能比程序员便宜多了。

0 0
原创粉丝点击