一张图告诉你,为什么提前后端分离的人是逻辑有问题的。

Author Avatar calidion 发表于 • 2017年06月18日 00:12 • 共 • 2574 • 次浏览

用户设置了登录查看,你尚未登录,请登录后查看。

最后编辑于 • 2017年06月19日 17:07 •  
9 回复
avatar
0
calidion 楼主
发放红包 2017年06月18日 00:42   # 1 楼

注:

客户端是指浏览器,支付宝这类的东西,包括里面的前端网页。

客户端比前端更加广泛。

前端属于客户端,但是客户端不属于前端。


avatar
0
calidion 楼主
发放红包 2017年06月18日 00:55   # 2 楼

通常我们:

将功能复合,将概念厘清


avatar
0
calidion 楼主
发放红包 2017年06月18日 01:28   # 3 楼

客户端技术是包括所有客户端使用的技术。包括原生客户端技术与Web前端技术。

所以混合APP就是全面使用了原生技术与Web前端技术的APP。

当然Web前端技术本身就是客户端原生技术的一种特例。

所以客户端原生技术》Web前端技术。


avatar
0
calidion 楼主
发放红包 2017年06月18日 01:43   # 4 楼

问:

前端不是指的JS和界面交互吗?怎么变成客户端了?

答:

  1. 前端是指浏览器端。 HTML+CSS+JS是前端技术。
  2. 浏览器是一种客户端。

avatar
0
calidion 楼主
发放红包 2017年06月18日 12:40   # 5 楼

前后端分离的三种错误形式:

  1. 将HTML模板处理当成是前端,而模板实际是前后端无关的。

     模板即可以在后端处理,一样可以在前端处理。
    

    常见的前端模板支持有handlebars, angular模板.

     后端的模板处理更加普及,不同的语言有不同的模板。
    
  2. 将提供基于JSON或者XML数据的API当成是前后端分离。

     而实际上这类形式只是AJAX时代的一种形式。
    
  3. 将nodejs服务器当成是前端,而java之类的服务器当成是后端。

     认为只要是JS就是前端,而JS只是一种语言。
     
     当Web Assembly完成后,所有的语言都是有机会成为前端开发语言的。
    

小结

因为前后端的分离完全不存在。相反,前后端存在代码上的合并。

所以针对以上三个错误,我们可以看出来他们的共同点都是对前后端没有概念造成的。

而前后端的概念很简单。

浏览器端就是前端,服务器端就是后端。

当然这里的前后与后端忽略了Web。

所以默认我们所说的前端是Web前端,后端是指Web后端。

错误是可以有很多种的,但是正确只会有一种。

当前后端分离出现这么多不同的理解时,我们就可以很清楚它是错误的。

概念之所以是概念是因为它能将概念所表达的东西与其它东西区分开,而不是相反。


avatar
0
发放红包 2017年06月19日 11:13   # 6 楼

楼主应该把标题改成web前后端,你文中所提的前后端指的都是web前后端。


avatar
0
BoringTu 回复了 # 84
发放红包 2017年07月31日 17:48   # 7 楼

你听说过在除了 “客户端是浏览器” 之外的应用场景出现过 “前/后端” 这个词的?? 难道你会管 iOS app 叫 前端?? (手动惊悚)


avatar
0
发放红包 2017年08月09日 16:09   # 8 楼

但是工作的时候前后端职责分离还是对的...毕竟你不能让前端弄个java工程 在jsp这类的代码里写前端, 那样会难受死的! 毕竟不是人人是全栈. 就算全栈混合着写也是难受的,不难受只能做同构了,比如 后端是node 接口才用java 用同一个语言做开发 不过现在ssr性能我很担忧


avatar
0
calidion 楼主 回复了 # 169
发放红包 2017年08月09日 16:21   # 9 楼

看来你还没有理解这个文章想表达的意思。

我再抽取出来,说明白一点:

  1. 前后端天然分离

  2. 现在有些人提的前后端分离是错误的。

  3. 前后端的人员如何安排并没有任何限制,可以因地制宜。我们讨论的是技术概念。没有人能阻止一个科学家成为艺术家。人是多彩的。

😂

你尚未登录,无法进行回复。