假设前端可以直接操作数据库并且解决了安全问题,还有必要需要后端工程师么?

2020-12-12 12:23:55 +08:00
 SystemLight

类似技术

虽说以上技术都不是真的实际操作数据库,但是如果真的可以直接操作数据库并且解决了安全问题, 是否还需要后端工程师。

6142 次点击
所在节点    前端开发
59 条回复
imn1
2020-12-12 16:46:59 +08:00
你这个实际上只是前后端在相同机器,如果在不同机器,那叫做“前端开发人员”同时也做后端的工作

不可能在客户端操作服务端的,sql 语句通过网络传送?
jackiecao
2020-12-12 16:51:27 +08:00
后端还能输出前端代码让前端映射呢....
为什么有后端和前端之分,是因为社会分工不同
SystemLight
2020-12-12 16:53:45 +08:00
@SuperManNoPain 说实话也不是不行,装个 PHPmyadmin 让用户自己玩去,哈哈。
SystemLight
2020-12-12 16:54:40 +08:00
@imn1 sql 语句通过网络传送,就是因为不能安全传输,所以才假设可以安全传输的基础上,问是否可以。
terax
2020-12-12 16:56:49 +08:00
firebase 了解一下。简单项目确实可以做到不需要“后端”介入,(因为 firebase 帮你做了)。但是一旦复杂之后就会力不从心了
imn1
2020-12-12 17:00:43 +08:00
@SystemLight #24
sql 只是一个浅显的小问题,更多是资源调度问题,例如队列满了、线程消耗等等,这些不是客户端可控的事情,服务器端编程,数据传递、展现只是一个部分
kenshinhu
2020-12-12 17:21:49 +08:00
后端代码写多了便成了后端工程师
hjiang
2020-12-12 17:30:50 +08:00
LeanCloud( https://leancloud.cn ) 的数据存储服务解决的就是让前端直接存取数据,不用自己写 API 的问题,用 ACL 来解决安全问题。但是一方面 ACL 需要仔细设计来实现想要的权限管理,另一方面,有的时候你完成一件事需要访问多次数据库,如果都从前端发起就会在互联网上有多个 round-trip,延迟大,还是需要自己写个后端 API endpoint 来一次把事情做完,一次返回结果。所以还是需要后端(对 LeanCloud 来说就是另一个叫云引擎的配套服务)。
suzic
2020-12-12 17:39:20 +08:00
拒绝,太累
charlie21
2020-12-12 17:55:39 +08:00
这位同学的意思是,因为引入了后端 所以引入了安全问题,现在没有后端了,所以也没有了安全问题(比如 用了 firebase 则不需要你去处理安全问题)

抛开安全问题不谈:缓存的问题,肯定是一个要解决的问题;数据库 IO 瓶颈的问题 肯定是一个要解决的问题(解决办法是队列,那么 队列的问题 肯定是一个要解决的问题);实时通信 肯定是一个要解决的问题;负载平衡 肯定是一个要解决的问题

总之 能带来的更有粒度的控制的,都可能发生一个个需要解决的问题 ... 如果你放弃这块的粒度控制,你就不用去面对这个问题,最后 你也就不需要引入后端了

最后可以参考 no code 方案,连前端工程师都不需要了

v2ex.com/t/692949?p=1#r_9293489 无代码开发的,目前正在创业中,好处很明显:提升生产力,让老板减少成本,扩大效益;缺点是 粒度控制不行,只能做一些没有任何复杂逻辑的东西
v2ex.com/t/729158 低代码,会不会“干掉”开发者?

所谓的低代码或者无代码开发,它并不是空穴来风。大厂也在做这个
https://zhuanlan.zhihu.com/p/60194187
参考 Microsoft Flow,软件工程师都不需要了但只能完成非常有限的工作
pecopeco
2020-12-12 17:56:04 +08:00
serverless→云开发
wellsc
2020-12-12 18:00:03 +08:00
后端不只是 crud,还有分布式,负载均衡,熔断限流等一大坨东西要考虑的
cmdOptionKana
2020-12-12 18:10:08 +08:00
我就问数据库放在哪里?

如果数据库也放在客户端,那就不是 web,而是单机应用。如果数据库放在后端,这不就需要后端吗?

因此会出现 firebase / severless 服务,但这只不过是将后端外包、转移而已,后端还是真实存在的呀。

所谓的云也一样,外包了很多后端业务出去,但云平台难道不就属于后端的范畴?
justin2018
2020-12-12 18:32:15 +08:00
全干(栈)工程师
mwVYYA6
2020-12-12 18:38:46 +08:00
@cmdOptionKana 只是全干工程师的活,变成了前端+学习使用 firebase

用 firebase 自己不用维护数据库服务了,也不用担心后端不配合改接口,几乎不用担心服务器掉线问题,剩下的时间可以用来开发应用。

写呀,写呀,写呀……





开发完功能后,发现国内并不能使用 firestoreU•ェ•*U
weixiangzhe
2020-12-12 19:18:53 +08:00
不可能 前端就没有安全一说,任何。前端都可能被篡改
cmdOptionKana
2020-12-12 20:19:10 +08:00
@mwVYYA6 小项目学 firebase 和学个后端小框架差别不大,现在后端框架如果只是简单用用,学习成本极低。

大项目谁都不会乐意自己的后端被死死绑定,迁移难度大。

最大的问题是,firebase 只是把后端外包了,后端依然有,只是在别人手里捏着。
crclz
2020-12-12 20:40:42 +08:00
安全问题已经解决了,微软的 blazor,小程序的云函数。但是本质上只是前后端耦合加强,并且前后端放在同一个项目里面罢了。该懂的东西还是要懂。
mrchi
2020-12-12 21:19:39 +08:00
@EminemW 天下大事,分久必合,合久必分:)
xuanbg
2020-12-12 21:35:43 +08:00
时间也不长,就十年前吧。客户端直连数据库的桌面应用不要太多。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/734750

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX