• 请不要在回答技术问题时复制粘贴 AI 生成的内容
onice
V2EX  ›  程序员

现在前后端分离是主流了吗?

  •  
  •   onice · Sep 24, 2018 · 17402 views
    This topic created in 2966 days ago, the information mentioned may be changed or developed.

    想问下大家,现在前后端分离是主流了吗?

    现在有个项目,正在进行技术选型阶段,在考虑要不要前后端分离,前后端分离有什么好处呢?

    还有个疑问是现在前端人手不够,可能要后端亲自上阵,前后端分离的话,哪些技术对后端来说比较容易。后端的主要技术栈是 Java 和 Python。

    谢谢大家。

    62 replies  •  2019-10-31 14:05:39 +08:00
    lsido
    lsido
    Sep 24, 2018 via Android
    1
    应该正在趋向主流,但还不是主流
    linbiaye
    linbiaye
    Sep 24, 2018❤️3
    2
    java 系的上 angular.
    mmdsun
    mmdsun
    Sep 24, 2018 via Android
    3
    主流。我们这都是
    Hilong
    Hilong
    Sep 24, 2018 via Android
    4
    上海这边应该是主流了,现在客户端性能强大了。很多工作可以放到前端来做了。后端不是和以前一样的写嘛。写写接口就好了啊
    2379920898
    2379920898
    Sep 24, 2018
    5
    分场景啊,ERP 你前后端分离试试呗
    javacodecreeks
    javacodecreeks
    Sep 24, 2018 via iPhone
    6
    这是一个趋势,而且用在微服务项目里的话,非常适合!可以各司其职提高开发效率,但是带来了接口测试成本,如果后端用 Java 的话,可以用 swagger 向前端暴露自己的接口
    duan602728596
    duan602728596
    Sep 24, 2018 via iPhone
    7
    没错,可以这么干,开发很舒服的
    SorcererXW
    SorcererXW
    Sep 24, 2018 via Android
    8
    如果要同时兼容前端和移动端,前后端分离很重要
    janxin
    janxin
    Sep 24, 2018❤️1
    9
    互联网化项目肯定是一个好选择,传统软件项目未必是一个好选择。
    前后分离的场景更加适用于业务不停发展变化的互联网业务,前端的变更需要更加快速,超过了后端的业务变化速度才能体现出比较大的优势。
    enjoyCoding
    enjoyCoding
    Sep 24, 2018 via iPhone
    10
    如果考虑到服务端渲染的话还是不要前后端分离了吧 毕竟前端比较少。
    NicholasYX
    NicholasYX
    Sep 24, 2018 via iPhone
    11
    目前我们着是这样 客户端又后台提供接口 其他前端来做
    后台管理部分全部又后台来做
    way2create
    way2create
    Sep 24, 2018
    12
    可惜我们公司前端水平太差了 比我个后端还差
    PHPer233
    PHPer233
    Sep 24, 2018 via iPhone
    13
    前端能做的事情就不要让后端做。
    sudoz
    sudoz
    Sep 24, 2018
    14
    @linbiaye #2
    前后端分离,后端还分 Java PHP ??你倒是说说为什么后端 Java,前端就要用 Angular ?
    linbiaye
    linbiaye
    Sep 24, 2018❤️3
    15
    @sudoz 你会错意了,没有说后端 java,前端就要 angular。对于后端程序员来说,如果熟悉 java 的那一套,上手 angular 容易。angular 才是 framework, 各种常用的组件都给你准备好了; vue, react 都只是 library,需要自己倒腾其它的 library。
    cyberpoint
    cyberpoint
    Sep 24, 2018
    16
    是的,反正深圳这边是这样的。但是分离后安全性可能降低,所以会结合 ssr。
    还有一个分离之后的 pwa 也能加速用户体验。
    wizardforcel
    wizardforcel
    Sep 24, 2018 via Android
    17
    好处是只写一种接口。坏处是可能要多一些人手。
    karllynn
    karllynn
    Sep 24, 2018
    18
    3 年前就分开了=,=

    不过写一些控制台之类的小玩意儿不分开也行
    xuanbg
    xuanbg
    Sep 24, 2018
    19
    @2379920898 ERP 更容易前后端分离呀,SPA 不就是基于浏览器的客户端么?
    dumbass
    dumbass
    Sep 24, 2018 via iPhone
    20
    jQ 一把梭
    nyaapass
    nyaapass
    Sep 24, 2018❤️2
    21
    前后端架构分离, 但开发人员不分离比较好, 不然每天撕不完的逼
    heww
    heww
    Sep 24, 2018
    22
    难道不是主流吗?我们在 2014 年时就前后端分离了,那个时候我们觉得自己分离的还不够早。
    FakeLeung
    FakeLeung
    Sep 24, 2018 via Android
    23
    不分离会疯的。。。
    youngxhui
    youngxhui
    Sep 24, 2018 via Android
    24
    angular
    aimiyooo
    aimiyooo
    Sep 24, 2018
    25
    Django+vue
    LokiSharp
    LokiSharp
    Sep 24, 2018 via iPhone
    26
    Flask+React
    leekafai
    leekafai
    Sep 24, 2018 via Android
    27
    好处就是后端逻辑与页面显示完全解耦,这个我认为还是很重要的,起码现在看到 jsp,php,ftl 什么的,碰都不想碰,因为很大机会能在里面看到:html×css×js×后端语言,这个改起来头很大。就算用户群是 ie8,可以加上 ssr 的库来渲染 html 吐出,但无论如何,语言混写的问题还是能有效避免
    akira
    akira
    Sep 24, 2018
    28
    分离以后 后端是接口为主,什么语言都有成熟方案的啦
    endlessing
    endlessing
    Sep 24, 2018
    29
    是主流,不然现在前端 vue,react 和 angular 怎么会那么火
    leyle
    leyle
    Sep 24, 2018
    30
    写一次接口,各个平台都可用。
    johnniang
    johnniang
    Sep 24, 2018 via Android
    31
    主要是一次编写,到处调用的感觉很爽
    sampeng
    sampeng
    Sep 25, 2018 via iPhone
    32
    如果你一起就 3-4 个人。别自己折腾自己。前后端分离是有沟通成本的。其他倒无所谓
    PythonAnswer
    PythonAnswer
    Sep 25, 2018 via iPhone
    33
    做的都是内部小项目,工具服务。全部后端框架搞定。
    zcxj138
    zcxj138
    Sep 25, 2018
    34
    如果人手不够的话,就别弄分离了,会搞崩溃的。
    keepfool
    keepfool
    Sep 25, 2018
    35
    两年前就是主流了吧。。。
    log4geek
    log4geek
    Sep 25, 2018
    36
    这么干两三年了,现在不是前后端分离的公司基本上不考虑了。
    anmie
    anmie
    Sep 25, 2018
    37
    看情况,前后端分离适用于 cms 这种便应用向的 web 项目,比如官网这种内容展示型的网站,还是服务端渲染好一些,这些项目从页面加载速度和 seo 的角度考虑,前后端分离真的不是一个特别好的选择
    ranwu
    ranwu
    Sep 25, 2018
    38
    看项目大小
    buwanju
    buwanju
    Sep 25, 2018
    39
    五六年前就开始了, 你现在才知道。赶紧的吧。
    diveIntoWork
    diveIntoWork
    Sep 25, 2018
    40
    @2379920898 ERP 为啥不适合前后端分离呀
    xcjx
    xcjx
    Sep 25, 2018
    41
    我以为我穿越了……大兄弟,你是不是看的古书,入的行……
    ochatokori
    ochatokori
    Sep 25, 2018 via Android
    42
    前端人手不足,不是必要就前后端不要分离了(分离之后前端工作量↑,总工作量也多很多)不分离又不是不能用,客户又不会管你分不分离
    keikeizhang
    keikeizhang
    Sep 25, 2018
    43
    16 年就已经分离了
    luvxy
    luvxy
    Sep 25, 2018 via iPhone❤️1
    44
    前端表示最好 vue,angular 感觉借助了 java 等后台的一些东西,但入门门槛高点,vue,angular,react 其实用哪个都可以,一般的项目根本不用想太多,还不是个 js,vue 的话我是觉得上手快
    Deeer
    Deeer
    Sep 25, 2018
    45
    前后端分离不是老早老早的事情了吗
    linuxchild
    linuxchild
    Sep 25, 2018
    46
    前边各种改的话,自然还是分离的好,常年没变化的,咋样都行
    heiyantutu
    heiyantutu
    Sep 25, 2018
    47
    现在都流行 前后端同构了。。
    xoxo419
    xoxo419
    Sep 25, 2018
    48
    PC 端也都分离么? 分离之后的 SEO 呢.
    Kei
    Kei
    Sep 25, 2018
    49
    但前后端都要做数据校验这一点是个痛点
    TustMan
    TustMan
    Sep 25, 2018
    50
    Vue + Spring Boot 吧 后端开发者看完 vue 文档,也基本能写的
    shuperjolly
    shuperjolly
    Sep 25, 2018 via iPhone
    51
    分离是业务内容分离,业务员又不是一定要分离的
    abc635073826
    abc635073826
    Sep 25, 2018
    52
    java 推荐 angular,python 选择 Django 和 flask
    iloveyou
    iloveyou
    Sep 25, 2018
    53
    现在都不考虑 seo 了吗?
    ifconfig
    ifconfig
    Sep 25, 2018
    54
    根据场景划分。

    1 )一般的企业超级后台管理系统分离意义不大,毕竟像很多后端框架已经集成了 auth 和很多 packpage,能很快针对运营同时的需求做出快速响应。比如:迭代小需求,快速修复 bug 马上上线。

    2 )目前我们前后分离的场景有:高并发活动营销 H5,客户类后台(最大化美观及可维护)
    Muninn
    Muninn
    Sep 25, 2018
    55
    现在前端好写,后端看看文档也能行,

    但是你永远也学不会 css 的。
    2379920898
    2379920898
    Sep 25, 2018
    56
    不知道啊。感觉不合适
    ben1024
    ben1024
    Sep 25, 2018
    57
    分离看公司规模和场景,盲目跟风搞分离只会问题更多
    ebony0319
    ebony0319
    Sep 25, 2018 via Android
    58
    我个人觉得最大的改变是前端已经有自己的一套体系了。以前写 mvc,又要考虑数据,又要考虑界面。现在只需要数据驱动。第二点就是快,性能真的提升了 n 倍。如果一定要考虑 seo 也可以多页面,是一样的。
    flyingghost
    flyingghost
    Sep 25, 2018
    59
    说到 SEO,我们是这样做的:
    针对 google,不需要额外做任何事。google 会执行前端 js 得到最终渲染页面。
    针对 baidu 等一票愚蠢蜘蛛,额外输出了一套平凡版页面,只有内容,以及一些语义标签,没有任何样式。
    据说 baidu 有一条原则是不允许人类版页面和蜘蛛版页面有差异,为了打击黑色 SEO。
    但我们似乎并没有发现目前做法有被歧视。

    仅供参考,也希望内行人士能确切指点这样做是否合适。
    zhangalong69
    zhangalong69
    Sep 27, 2018
    60
    @Muninn 太真实了吧
    youcanwin8099
    youcanwin8099
    Oct 28, 2019
    61
    @janxin 这个说的很对,很理性。
    youcanwin8099
    youcanwin8099
    Oct 31, 2019
    62
    @NicholasYX “目前我们着是这样 客户端由后台提供接口, 其他前端来做,后台管理页面全部由后台来做”。
    我觉得这种分工是比较合理的。客户端应该确切的讲,比如 APP、微信页面、前端综合网页(不是纯粹后台管理端网页的那种)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1629 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 175ms · UTC 02:46 · PVG 10:46 · LAX 18:46 · JFK 21:46
    ♥ Do have faith in what you're doing.