37 条回复  ·  4054 次点击
kneo 小成 2025-10-19 17:21:40
朋友,我看前面感觉可能是作为新员工的你太优秀了遭到同事妒忌。但是怎么感觉你写着写着就跑题了呢。不是很明白你要表达的重点。也不知道怎么回复。
bbbblue 初学 2025-10-19 17:23:41
他这个应该是前端也写的菜 所以最好你一个接口就对应他页面/组件里全部数据吧 数据组装全都在后端做 后面前端改后端跟着改 你和他互换一下 你写前端 他写后端 搞不好就要反过来了 他这个评价标准就是你们都要配合他 他怎么简单怎么来😂
unbinilium 楼主 初学 2025-10-19 18:11:04
@rabbbit 是的,这是第一个分歧点,我比较 RESTful ,endpoint 想做成 `/{组件}/{功能}` 第二个分歧点在 payload 部分,比如一个划定时间段的日程组件(`.../schedule`),对方倾向平铺 `{"monday":[{...},...],"tuesday":[...],...}`, 我是倾向规则化 `{"weekly":[{...},...],"exceptions":[...],...}` 以上两个分歧延伸到了其他接口上,再举个例子就是磁盘管理组件: - 显示当前可用的磁盘、每个磁盘的状态 - 用户对磁盘的配置(配额、清理策略等) - 用户执行的操作等(挂载、格式化等) 由于上面几点在原型里比较模糊,产品迟迟没有给出确定的需求,我就自己打了个草稿: - 按功能把 endpoint 分了两级 - response body 按磁盘->分区做了结构化的组合,然后加了一些冗余字段 - 比如状态机区分:错误/格式化中/未挂载/正常/同步中/索引中 - 状态机的冗余属性:格式化中状态下代表格式化进度(类型不变) - revision:用于将状态机与用户行为同步,比如用户请求格式化,重命名等( POST 非幂等) - 其他冗余字段如当前分区格式等... 可能对比现有的原型确实复杂了点,之前确实也没这方面的项目经验
ksedz 小成 2025-10-19 18:17:17
我觉得你不应该太理想化,哪一点都是可以让步的,前提是对方当个人。 既然对方这么强硬,直接怼回去,或者跟领导说跟不会说人话的合作不了。
fregie 小成 2025-10-19 18:18:08
没仔细看,但是我整体认同对方的思想,在不破坏可拓展性的前提下,能简单(simple)就尽可能的简单,能不加的东西就不加,能不分的层就不分 当然在老板需要的情况下也可以破坏拓展性来换时间,但是要提前说清楚免得未来背锅
rabbbit 小成 2025-10-19 18:24:44
@unbinilium 产品没明说的按简单的来,不建议复杂化. 否则后期产品设计变动,你俩都要改.
DefoliationM 小成 2025-10-19 18:25:12
>> 我写好自己模块前端部分 API 的草案后,请前端的同事先帮我 review 一下 ??? 为什么要让前端 review 你的接口,直接给 swagger 让他用就完事了,设计好的东西没有 bug 就不要听别人的瞎改。 >> 一年前上司曾批评过我过度设计,效率低 我也不建议过度包装,很没用,尤其是项目大了以后很容易忘记这些复杂的设计,维护起来也累,越直观越好。 >> 在后端仅读 payload 的数据结构上做扩展冗余,及 response 里加一些未来可能用上的信息 看情况吧,后面大改也可以直接接口路径加版本号,比如 /api/user/v1, /api/user/f, /api/user/v3 >> 需要先让产品经理认识到这个设计有问题 建议不要和产品 battle ,产品有自己的想法(也有可能单纯按照用户需求来),所以你就按产品的设计实现,不然后面出问题很可能背锅的就是你。 >> 我协作不到位,我写这部分前端接口没提前通知他 你们公司没有 jira 或者 gitlab issue 之类的东西吗? >> 我是学生思维,抓不到项目重点,写出来的东西不专业他看不懂 呃呃,就软件工程那点东西,按上学学的来就行,需求分析,概要设计,详细设计... >> 不能反映到前端原型的字段上就别加,不要自作聪明以为其他人没想到 这我觉得无所谓,swagger 上解释好接口的数据结构就行了,加不加跟前端一点关系都没有。 >> 我很难接受前端把这种模式通过 API 扩散给后端 跟上面类似,接口是后端写的,没有 bug 的情况下不需要向前端确认设计,谁说要改就让谁做,改了也不背锅。 >> 以及他开始打算 HTTP 明文传输密码,后面其他人说不安全换成了传密码的 sha256 (不加 salt 和开始有什么区别...) 现在都有 tls 了,我实在是想不通为什么很多人还要二次加密,是嫌资源用的太少了吗?前端代码都是公开的,你再怎么加密都没用。 难道你们公司也请了某些信创的人来验证安全性?
rb6221 初学 2025-10-19 18:36:01
我在想,你自称非 CS 专业+职场新人,怎么就能上来就做出这么复杂的设计?你所谓的设计其中的优点,有经过实践验证吗?(比如说某些设计是真的曾经帮你减少过工作量)
MYDB 小成 2025-10-19 19:37:15
技术宅就爱以技术角度分析双方对错,别人很有可能就是讨厌你,闹到骂人的地步,要么骂回去,要么打回去,不要想着沟通和优化对接流程,一旦对他人有不好的印象,除了你俩一拯救世界,不然你俩永远有隔阂
mightofcode 初学 2025-10-19 20:15:33
我想到了我的同事(水平很差) 一开始我对其非常友善 准备长期互帮互助好好做同事 然后某一天开始就工作上的事教训我指导我做事 由于其水平本就一般 其说的话非常没道理 被我一通反教训 然后就一直老实了
返回顶部