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