当前位置:首页 > 焦点

什么是前端和后端

打开一个网页,什前你看到的端和按钮、图片、后端输入框,什前这些跑在你浏览器里的端和东西,就是后端前端。数据存在哪、什前谁在验证你的端和密码、为什么你刷新页面购物车还在——这些发生在千里之外的后端服务器上,是什前后端。

前端的端和工作对象是用户的眼睛和手指。HTML搭骨架,后端CSS管长相,什前JavaScript负责动起来。端和一个按钮点下去是后端变色还是弹窗,页面滚动时导航栏是消失还是固定在顶部,这些都归前端管。我见过一个电商网站,光“加入购物车”这个按钮的动画就调了三天——因为产品经理觉得弹跳的幅度“不够让人想点”。

后端藏在暗处。你用美团下单,后端要同时处理:扣库存、算配送费、通知骑手、生成订单号、发短信给你。这些事几乎同时发生,但你看不到。后端工程师整天跟数据库、服务器、API打交道。他们关心的是:一千个人同时抢一张票,系统会不会崩?用户A的余额扣了但订单没生成,钱去哪了?

两者的分界线其实在变模糊。以前前端只负责展示,后端给什么就显示什么。现在不一样了。React、Vue这些框架让前端能自己管理状态,用户填了一半的表单,不经过后端也能暂存。Node.js出现后,JavaScript也能写后端了。我认识一个全栈工程师,他一个人用Next.js写完整个项目,前端后端都在一个文件目录里。

但分工依然清晰。前端要处理兼容性——同一个页面在Chrome、Safari、微信内置浏览器里长得不一样。后端要处理并发——双十一零点,几亿人同时点结算,服务器不能挂。前端考虑的是“这个下拉菜单在iPhone SE上会不会被挡住”,后端考虑的是“数据库连接池够不够用”。

举个具体例子。你在知乎点赞。前端做的事:手指按下时图标变蓝,数字加一,如果网络慢就显示个转圈。后端做的事:验证你登录了没,查你是不是已经点过赞,往数据库写一条记录,把新点赞数返回给前端。如果后端没做幂等处理,你狂点十下可能产生十条记录——前端看起来只加了一,数据库里多了九条脏数据。

薪资上也有意思。刚入行时前端可能比后端低一点,因为HTML/CSS入门快。但三年后差距就小了。高级前端要懂性能优化、工程化、浏览器渲染原理,难度不比后端低。后端要懂分布式、微服务、高可用,也不是省油的灯。市场供需在变,前几年移动端火的时候前端薪资倒挂,这两年AI火了后端算法岗又涨上去了。

自己做个项目就明白了。用Flask写个博客,后端就几十行代码,但前端要调字体、间距、响应式布局,折腾一整天。反过来,用现成的静态博客生成器,前端模板一抓一大把,但想加个评论功能,又得搞数据库和接口。

选哪条路?喜欢抠细节、对视觉敏感、愿意花时间调一个像素的人,前端更合适。喜欢逻辑推理、对数据流感兴趣、能忍受盯着日志找bug的人,后端更对胃口。当然,没人拦着你两个都学。只是别信“前端已死”或者“后端太卷”这种话——死的都是不肯学新东西的人。

分享到: