• 我们在设计API时该规避哪些不利影响?
  • 发布于 2个月前
  • 136 热度
    0 评论
在设计之初,我们就特别强调,API 的设计要以用户为中心,而 API 设计最大的陷阱,就是从服务开发者的角度进行设计。因此,在进行 API 设计时,要避免落入下面的四个陷阱。

陷阱一:数据的影响
如果是从底向上设计系统,就很容易掉入这个陷阱。从需求中找出关键业务名词,设计实体,创建表结构,最后为每个实体数据实现了增、删、改、查四大服务,提供给用户使用。这时候你需要好好思考一下:客户真的是需要增、删、改、查服务吗?

陷阱二:遗留代码和业务逻辑的影响
对原有系统代码的研究和业务逻辑的调研,很快会让我们进入 API 的内部实现和流程,而忽略了用户的需要。例如,我们通常会想着如何管理好收货地址,却没有想用户为什么需要收货地址,如何使用收货地址。

陷阱三:软件架构的影响
API 方便了不同软件之间的通信,也让服务更精细化(微服务),导致用户需要的信息可能来自几个服务。遇到这种情况,我们倾向于向用户提供相关的所有 API,让用户自由调用。这样的设计,虽然满足了需要,有一定的灵活性,但对用户是不友好的。不仅如此,还暴露了内部的软件架构,甚至给用户返回了不必要的数据。

陷阱四:组织的影响
在一个企业、组织中设计 API 时,难免不受企业部门、团队和项目的运行和管理的影响。受到这种影响,API 的设计常常会暴露企业的内部工作细节,但是,外部的使用者却难于理解和调用。究其原因,就是因为企业内部的工作与用户的目标毫不相干。

小结
避免四大陷阱的关键,是从用户的角度出发,思考 API 的设计,帮助用户极简的实现他们的目标;而不是从数据、业务逻辑、软件架构和组织运行的方向出发,只关注 API 内部的实现
用户评论