有没有大神来科普一下前后端职责

2018-12-23 14:55:32 +08:00
 orangeface

今天遇一外包 把我气笑了 跟我一本正经的说 前端只用把页面做好 假数据做好 就好了 其他的调试接口什么的都应该后端来做???? 现在后端都要自己写 js 对接自己的 api 了吗? 是我太年轻了吗???

5244 次点击
所在节点    前端开发
38 条回复
ByZHkc3
2018-12-23 17:06:19 +08:00
这种直接往死里怼,你接口自测完成写好文档就扔给他们自己联调,前端是涉及到流程交互的,要你写 js 你就该让他们滚蛋
sunjiayao
2018-12-23 17:16:41 +08:00
前期先出接口文档,一切按照文档进行开发。开发时假数据前端自己解决,你指定好跨域省的在这上面扯皮。不行就把这个帖子发给他
summermao
2018-12-23 17:20:16 +08:00
垃圾外包让他滚
summermao
2018-12-23 17:21:19 +08:00
你就问他能不能做
also24
2018-12-23 17:24:57 +08:00
一开始以为是 “模板” 带来的后遗症,在后端模板嵌前端代码的情况下,确实有可能混淆这部分职责。
结果仔细看下来发是个前后端分离的项目……


真的从分工精细化角度来说,前端确实有可能细分为:
* 专门实现页面,写样式的前端
* 专门对接接口,写 JS 写页面逻辑的前端

但无论如何,写 JS 怎么都不应该是后端的 “职责” 的~
后端对前端页面的触及,最多也就到 “模板” 这个层级了。


至于对方所使用的理由:
如果后端自己对接,后端牛逼的话最快可能一两天就搞定,1 服务器是不用跨域的,2 自己写的代码自己可以去调配

改一下好像也没什么问题嘛:
如果前端自己写后端,前端牛逼的话最快可能一两天就搞定,1 服务器是不用跨域的,2 自己写的代码自己可以去调配
V2exUser
2018-12-23 19:58:40 +08:00
接口联调是双方的工作,后端给文档,主动权在前端手里,如果前端联调有问题并指向接口,告知后端一起处理。
mcfog
2018-12-23 20:06:34 +08:00
搞不定外包就去搞定给外包开工资的人
zxcvsh
2018-12-23 20:27:52 +08:00
js 前段写更好吧,很多东西影响布局
weakish
2018-12-23 20:53:12 +08:00
@orangeface 跨域设置好 http header 就可以,实在不行浏览器还可以通过装插件或者命令行参数来绕过。API 接口定了,前端按文档开发就是了,如果需要调试,后端你给它实现一个 mock api 就可以。

「 js 就跟 java 后台一样的,是后端的必修课」如果不能换外包的话,你可能真的需要学下 js,顺便再学下 css,然后全部自己写。(和这样的外包合作很可能反复扯皮,最后浪费的时间可能超过你学习和自己写前端的时间……
Vegetable
2018-12-23 20:53:19 +08:00
谁是甲方啊?这样不能给钱的啊
weakish
2018-12-23 21:03:59 +08:00
「所以你没办法短时间内快速对接,这也是我之前为什么一直说后端让我们对接是给我们挖坑的原因」

嗯,你也可以说:Node.js 是前端的必修课,接口( API Gateway )应该由前端来写,方便调试,如果需要修改 API,也更方便。然后前端只需事先告诉后端需要实现什么微服务,然后定好微服务的接口(微服务因为功能单一,所以接口变动的可能性相对来说很小,而且调试方便——微服务没实现前,前端可以 mock 实现,等微服务实现了再替换)。这样前端和后端的开发基本上可以独立进行,按照各自的节奏同时开发,可以做到超快速对接。所以我觉得 API Gateway 让后端实现是给双方挖坑。
otakustay
2018-12-23 21:32:38 +08:00
如果只是 mock 测试,而没有写后端接口调用的 JS 代码,这是前端的问题
但是如果这样,前端怎么会反馈“因为跨域访问不通”呢,难道是完全没有试过的情况下撒谎说的吗
如果真的是因为跨域访问而导致没有办法对接上,那么实现相关的跨域配置并让前端可以访问,这个算是后端的职责我认为没有问题
simonguo
2018-12-23 21:57:32 +08:00
前后端分离职责划分非常简单:

1.后端管理好 API, 做好每一个 API 的单元测试,理论上只需要给前端一份完整的 API 文档就行了。
2.前端管理所有和 UI 相关的逻辑,包括路由管理,数据对接。


普通流程:

1.产品经理分解需要。
2.设计:
- 2.1 前端架构设计
- 2.2 后端架构设计, 以及 API 设计 (设计过程中需要及时讨论,同时与前端,和测试进行 review )
- 2.3 测试,测试用例设计
- 2.4 运维,准备服务资源
3.开发,前端开发,后端开发
4.提交测试,bug 修复
5.运维准备上线。



备注:一般在 API 设计的过程中会使用一些工具,在 API 设计完成以后,对应的 Mock Server 的数据也就生成好了,这样前端和后端能够很好的并行开发。
tanpengsccd
2018-12-23 23:00:46 +08:00
我认为后端只要给 完整 API 文档就行了了。是 swagger 或类似的就更好了。但是感觉后端会用 swagger 的人好少啊,和没文档的后端对接真蛋疼
initsa
2018-12-24 09:13:17 +08:00
……我们数据筛选分页啥的,都是前端来做,后端只给数据,至于跨域,没后端配合估计也不好饶过去,写接口的时候应该规定好
vazo
2018-12-24 11:25:16 +08:00
吵什么吵,谁出钱听谁的
Junjunya
2018-12-25 14:11:44 +08:00
3 年前的前端就是只负责 html+css 写好页面,然后剩下的工作都是后端来做了包括 js,偶尔还会改点 css,所以那会前端被谑称为切图仔。后端相当于是半个 “全干”程序员。


现在的前后端分离之后,常见的是后端提供只接口,保证接口的稳定性,然后前端根据接口自己写页面负责 html+css+js


至于楼主现在遇到的情况。其实我觉得问题不大,就是个分工的问题。很多外包因为程序简单,自己一个人前后端通吃写起来很快,但是又不想写 html+css 这种“脏活,累活”就只让前端出页面,然后后端来套页面。

还有很多小城市里的公司还是这种模式
orangeface
2018-12-28 02:10:02 +08:00
感谢各位大神 学到老活到老 那天真的是气炸了 对面一直在各种理由甩锅 就是因为时间紧迫来不及对接,最后我找我朋友熬到 2 点对接完了 我是很愿意学习新东西的 我只是气这些外包为了甩锅不择手段 最后还喷我说我一晚上多出来 20 多个接口全部是假的 不可能写的出来 还要让我给他们看代码。当时真的气笑了 不过真的是吃一堑长一智 立贴长记性

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

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

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

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

© 2021 V2EX