想问下大家,现在前后端分离是主流了吗?
现在有个项目,正在进行技术选型阶段,在考虑要不要前后端分离,前后端分离有什么好处呢?
还有个疑问是现在前端人手不够,可能要后端亲自上阵,前后端分离的话,哪些技术对后端来说比较容易。后端的主要技术栈是 Java 和 Python。
谢谢大家。
1
lsido 2018-09-24 12:20:26 +08:00 via Android
应该正在趋向主流,但还不是主流
|
2
linbiaye 2018-09-24 12:23:38 +08:00 3
java 系的上 angular.
|
3
mmdsun 2018-09-24 13:12:01 +08:00 via Android
主流。我们这都是
|
4
Hilong 2018-09-24 13:16:56 +08:00 via Android
上海这边应该是主流了,现在客户端性能强大了。很多工作可以放到前端来做了。后端不是和以前一样的写嘛。写写接口就好了啊
|
5
2379920898 2018-09-24 13:20:42 +08:00
分场景啊,ERP 你前后端分离试试呗
|
6
javacodecreeks 2018-09-24 13:20:56 +08:00 via iPhone
这是一个趋势,而且用在微服务项目里的话,非常适合!可以各司其职提高开发效率,但是带来了接口测试成本,如果后端用 Java 的话,可以用 swagger 向前端暴露自己的接口
|
7
duan602728596 2018-09-24 13:46:39 +08:00 via iPhone
没错,可以这么干,开发很舒服的
|
8
SorcererXW 2018-09-24 14:22:20 +08:00 via Android
如果要同时兼容前端和移动端,前后端分离很重要
|
9
janxin 2018-09-24 14:26:32 +08:00 1
互联网化项目肯定是一个好选择,传统软件项目未必是一个好选择。
前后分离的场景更加适用于业务不停发展变化的互联网业务,前端的变更需要更加快速,超过了后端的业务变化速度才能体现出比较大的优势。 |
10
enjoyCoding 2018-09-24 14:29:43 +08:00 via iPhone
如果考虑到服务端渲染的话还是不要前后端分离了吧 毕竟前端比较少。
|
11
NicholasYX 2018-09-24 14:32:21 +08:00 via iPhone
目前我们着是这样 客户端又后台提供接口 其他前端来做
后台管理部分全部又后台来做 |
12
way2create 2018-09-24 15:15:33 +08:00
可惜我们公司前端水平太差了 比我个后端还差
|
13
PHPer233 2018-09-24 15:18:54 +08:00 via iPhone
前端能做的事情就不要让后端做。
|
14
sudoz 2018-09-24 15:31:35 +08:00
@linbiaye #2
前后端分离,后端还分 Java PHP ??你倒是说说为什么后端 Java,前端就要用 Angular ? |
15
linbiaye 2018-09-24 15:39:29 +08:00 3
@sudoz 你会错意了,没有说后端 java,前端就要 angular。对于后端程序员来说,如果熟悉 java 的那一套,上手 angular 容易。angular 才是 framework, 各种常用的组件都给你准备好了; vue, react 都只是 library,需要自己倒腾其它的 library。
|
16
cyberpoint 2018-09-24 15:46:59 +08:00
是的,反正深圳这边是这样的。但是分离后安全性可能降低,所以会结合 ssr。
还有一个分离之后的 pwa 也能加速用户体验。 |
17
wizardforcel 2018-09-24 15:57:47 +08:00 via Android
好处是只写一种接口。坏处是可能要多一些人手。
|
18
karllynn 2018-09-24 17:18:12 +08:00
3 年前就分开了=,=
不过写一些控制台之类的小玩意儿不分开也行 |
19
xuanbg 2018-09-24 17:18:27 +08:00
@2379920898 ERP 更容易前后端分离呀,SPA 不就是基于浏览器的客户端么?
|
20
bojackhorseman 2018-09-24 21:19:24 +08:00 via iPhone
jQ 一把梭
|
21
nyaapass 2018-09-24 22:12:37 +08:00 2
前后端架构分离, 但开发人员不分离比较好, 不然每天撕不完的逼
|
22
heww 2018-09-24 22:20:48 +08:00
难道不是主流吗?我们在 2014 年时就前后端分离了,那个时候我们觉得自己分离的还不够早。
|
23
FakeLeung 2018-09-24 22:23:07 +08:00 via Android
不分离会疯的。。。
|
24
youngxhui 2018-09-24 22:24:33 +08:00 via Android
angular
|
25
aimiyooo 2018-09-24 22:39:54 +08:00
Django+vue
|
26
LokiSharp 2018-09-24 22:59:51 +08:00 via iPhone
Flask+React
|
27
leekafai 2018-09-24 23:10:51 +08:00 via Android
好处就是后端逻辑与页面显示完全解耦,这个我认为还是很重要的,起码现在看到 jsp,php,ftl 什么的,碰都不想碰,因为很大机会能在里面看到:html×css×js×后端语言,这个改起来头很大。就算用户群是 ie8,可以加上 ssr 的库来渲染 html 吐出,但无论如何,语言混写的问题还是能有效避免
|
28
akira 2018-09-24 23:11:53 +08:00
分离以后 后端是接口为主,什么语言都有成熟方案的啦
|
29
endlessing 2018-09-24 23:20:51 +08:00
是主流,不然现在前端 vue,react 和 angular 怎么会那么火
|
30
leyle 2018-09-24 23:55:19 +08:00
写一次接口,各个平台都可用。
|
31
johnniang 2018-09-24 23:58:39 +08:00 via Android
主要是一次编写,到处调用的感觉很爽
|
32
sampeng 2018-09-25 00:36:55 +08:00 via iPhone
如果你一起就 3-4 个人。别自己折腾自己。前后端分离是有沟通成本的。其他倒无所谓
|
33
PythonAnswer 2018-09-25 07:32:38 +08:00 via iPhone
做的都是内部小项目,工具服务。全部后端框架搞定。
|
34
zcxj138 2018-09-25 09:01:55 +08:00
如果人手不够的话,就别弄分离了,会搞崩溃的。
|
35
keepfool 2018-09-25 09:03:21 +08:00
两年前就是主流了吧。。。
|
36
log4geek 2018-09-25 09:21:47 +08:00
这么干两三年了,现在不是前后端分离的公司基本上不考虑了。
|
37
anmie 2018-09-25 09:23:52 +08:00
看情况,前后端分离适用于 cms 这种便应用向的 web 项目,比如官网这种内容展示型的网站,还是服务端渲染好一些,这些项目从页面加载速度和 seo 的角度考虑,前后端分离真的不是一个特别好的选择
|
38
ranwu 2018-09-25 09:25:57 +08:00
看项目大小
|
39
buwanju 2018-09-25 09:27:18 +08:00
五六年前就开始了, 你现在才知道。赶紧的吧。
|
40
diveIntoWork 2018-09-25 09:42:47 +08:00
@2379920898 ERP 为啥不适合前后端分离呀
|
41
xcjx 2018-09-25 09:42:51 +08:00
我以为我穿越了……大兄弟,你是不是看的古书,入的行……
|
42
ochatokori 2018-09-25 09:53:18 +08:00 via Android
前端人手不足,不是必要就前后端不要分离了(分离之后前端工作量↑,总工作量也多很多)不分离又不是不能用,客户又不会管你分不分离
|
43
keikeizhang 2018-09-25 09:54:10 +08:00
16 年就已经分离了
|
44
luvxy 2018-09-25 09:57:20 +08:00 via iPhone 1
前端表示最好 vue,angular 感觉借助了 java 等后台的一些东西,但入门门槛高点,vue,angular,react 其实用哪个都可以,一般的项目根本不用想太多,还不是个 js,vue 的话我是觉得上手快
|
45
Deeer 2018-09-25 10:00:13 +08:00
前后端分离不是老早老早的事情了吗
|
46
linuxchild 2018-09-25 10:03:53 +08:00
前边各种改的话,自然还是分离的好,常年没变化的,咋样都行
|
47
heiyantutu 2018-09-25 10:05:57 +08:00
现在都流行 前后端同构了。。
|
48
xoxo419 2018-09-25 10:06:24 +08:00
PC 端也都分离么? 分离之后的 SEO 呢.
|
49
Kei 2018-09-25 10:11:14 +08:00
但前后端都要做数据校验这一点是个痛点
|
50
TustMan 2018-09-25 10:38:26 +08:00
Vue + Spring Boot 吧 后端开发者看完 vue 文档,也基本能写的
|
51
shuperjolly 2018-09-25 10:39:29 +08:00 via iPhone
分离是业务内容分离,业务员又不是一定要分离的
|
52
abc635073826 2018-09-25 10:42:13 +08:00
java 推荐 angular,python 选择 Django 和 flask
|
53
iloveyou 2018-09-25 10:47:57 +08:00
现在都不考虑 seo 了吗?
|
54
ifconfig 2018-09-25 10:55:16 +08:00
根据场景划分。
1 )一般的企业超级后台管理系统分离意义不大,毕竟像很多后端框架已经集成了 auth 和很多 packpage,能很快针对运营同时的需求做出快速响应。比如:迭代小需求,快速修复 bug 马上上线。 2 )目前我们前后分离的场景有:高并发活动营销 H5,客户类后台(最大化美观及可维护) |
55
Muninn 2018-09-25 11:27:00 +08:00
现在前端好写,后端看看文档也能行,
但是你永远也学不会 css 的。 |
56
2379920898 2018-09-25 11:57:23 +08:00
不知道啊。感觉不合适
|
57
ben1024 2018-09-25 12:38:16 +08:00
分离看公司规模和场景,盲目跟风搞分离只会问题更多
|
58
ebony0319 2018-09-25 12:41:21 +08:00 via Android
我个人觉得最大的改变是前端已经有自己的一套体系了。以前写 mvc,又要考虑数据,又要考虑界面。现在只需要数据驱动。第二点就是快,性能真的提升了 n 倍。如果一定要考虑 seo 也可以多页面,是一样的。
|
59
flyingghost 2018-09-25 22:06:36 +08:00
说到 SEO,我们是这样做的:
针对 google,不需要额外做任何事。google 会执行前端 js 得到最终渲染页面。 针对 baidu 等一票愚蠢蜘蛛,额外输出了一套平凡版页面,只有内容,以及一些语义标签,没有任何样式。 据说 baidu 有一条原则是不允许人类版页面和蜘蛛版页面有差异,为了打击黑色 SEO。 但我们似乎并没有发现目前做法有被歧视。 仅供参考,也希望内行人士能确切指点这样做是否合适。 |
60
zhangalong69 2018-09-27 16:56:33 +08:00
@Muninn 太真实了吧
|
61
youcanwin8099 2019-10-28 15:19:33 +08:00
@janxin 这个说的很对,很理性。
|
62
youcanwin8099 2019-10-31 14:05:39 +08:00
@NicholasYX “目前我们着是这样 客户端由后台提供接口, 其他前端来做,后台管理页面全部由后台来做”。
我觉得这种分工是比较合理的。客户端应该确切的讲,比如 APP、微信页面、前端综合网页(不是纯粹后台管理端网页的那种) |