从一个“保存”按钮开始

            最近工作中,后端需要提供一个接口,这个接口需要对同一个实体表新增与删除,接这个需求时,直觉上就觉得这个接口很反常,但是当时是在做MVP,追求速度,所以当时没有太多纠结,就先做了,并在注释中加上了继续思考的todo事项。现在精细化产品的时候,看到了之前写的注释,于是有了这篇思考。  

当前的需求是这样的,界面交互如下:

先抛出我的观点:

我觉得接口就应该拆开成两个接口,一个增加,一个删除。理由如下:

  1. 数据的安全性
    • 如果合成一个接口,在删除实体对象的时候,可能会业务失败,这样增加也会失败。比如,处与某个状态时,这个实体对象不能删除。
    • 可选择项比较多,人会误操作,混合两种,每个人每次的选择都需要记住全量的信息,加重用户负担。
    • 删除是个危险操作,用户需要确认
  2. 接口的单一职责
    • 方便重用
    • 合成一个接口,会加后端代码的复杂度,删除逻辑入口增加。
  3. 屁股决定脑袋:
    • 我是个后端

前端观点:

    1. 合并两个接口,减少请求次数
    2. 合并接口,可以减少不同端的代码,降低开发成本,如果分开,手机端与网页都需要处理两个接口的逻辑。
    3. 操作更便捷,只需要钩钩,取消钩就好,一步到位

最后的结论,重构设计,界面上就拆成新增与删除两部分进操作。

另外,如果选项不超过5个,并且简单的业务对象(如标签),合成一个也没有问题,方便后期扩展。

posted @ 2020-05-26 11:15  潇水鱼米  阅读(209)  评论(0编辑  收藏  举报