美文网首页
接口由谁来设计更妥当

接口由谁来设计更妥当

作者: BigDipper | 来源:发表于2020-07-15 16:22 被阅读0次

近日,看了篇文章,名为《一篇来自前端同学对后端接口的吐槽》,阅后,颇有感触。

在文中,这个槽吐得犀利,甚合吾意。作者开篇就抛出了自己的观点:究竟接口应该由谁来设计?是接口的消费者,还是接口的提供者?消费者就是使用并展现接口数据的前端人员,对应的提供者则是后端人员。

通常接口的定义是由后端人员来设计,这样建库、建表也方便,一条路就走下去了。设计完之后呢,就丢给前端去用,后端不用,就如文中提到的“好比一个从来不尝自己做的菜的厨子,你指望他的菜能好到哪里去,他的厨艺能好到哪里去?”,这就很有可能导致设计出来的接口不好用。

我待过的都是小公司,大公司的情况是什么样,没待过,不清楚,没有发言权。做为一个小公司,我们没有架构师,接口也都是由后端的哥们设计,因为老板认为由后端人员来设计接口,项目有保障,前端的人员不懂后台,不能设计;做为我们前端也认为,前端设计出来的接口字段还得要后端来实现,不知对后端的数据结构有什么影响,是不是数据库不好架构,表是不是不好设计,到时候,实现不了也是白费。因此,由后端来设计接口也是件水到渠成的事儿。

由提供者设计接口其实没有什么不妥,只要你别站在开发者的角度来想问题。

在实际项目中调用接口时,我的体会是太难用了,接口里什么数据都有。获取文章的信息,连作者的用户信息都有,而且信息还非常之全,什么用户的创建时间、用户的权限标识、用户名的修改时间......,不光这样,获取的文章信息里,还有几个空字段,都是数据库里预留的。看起来,接口数据要嘛有嘛,可前端从接口中抽取的有用信息,经常都不到一半,造成了极大的带宽浪费。我只要小而美,你给我弄了个大而全。

相比大而全,更煎熬的是,接口返回的数据,你前端不能直接用,得二次加工。用一个for循环,根据某个字段id,把获取的数据全部或部分地筛选一遍,重新组织出一个新数据集来,最终展现的是这个新数据集,而不是接口给的数据。

有时,在另外一个场景需要数据时,提供者会跟你说:“你调之前那个接口就行,里边有数据,你自己摘一下。”

累啊,而且这种情形还经常在你眼前出现。

最后,借用文中作者的话做个总结吧:“API和代码应该是精准的,准确表达你想实现的一切而不存在有歧义。一个接口本应该就专注一件事情。”

相关文章

  • 接口由谁来设计更妥当

    近日,看了篇文章,名为《一篇来自前端同学对后端接口的吐槽》,阅后,颇有感触。 在文中,这个槽吐得犀利,甚合吾意。作...

  • 2018-05-16

    #接口测试用例设计-博客-云栖社区-阿里云 #### 接口测试用例设计一 ##### 1、接口测试概念 接口...

  • 接口设计评审规范

    接口设计评审规范 前言 本接口设计规范,参考了restfull的部分设计理念。 以资源为中心的接口设计 资源是 R...

  • 对设计模式的总结(个人理解)

    抽象类更注重,类和类之间的关系,和存在的约束。接口更注重对类的行为约束,统一规则。 设计模式的定义: 设计模式(D...

  • 19年第34周:Go语言 有趣的接口

    一、Golang的接口 Go语言接口设计很符合设计原则参考图灵丛书中的《设计模式》 当我看到Golang的接口时,...

  • “妥当”

    之前听过一个故事,讲国外麦当劳和国内麦当劳之间的区别,麦当劳有个规矩,早餐时间过了就不再售卖早餐。那么一个青年来了...

  • 妥当

    这几天在看曾仕强教授所讲的一些课程。 他说强调的观点是自作自受,即自己做出的选择自己要承担后果。 我是非常认同。 ...

  • 一、起步(1.5Kv设计语言)

    1.5Kv设计语言 Kivy提供了一种使用简单,扩展性好的设计语言。这种语言使得图形接口设计更容易同程序逻辑分离,...

  • 接口安全设计-签名机制

    接口安全设计-签名设计 签名设计主要围绕Timestamp和Sign机制展开设计,保证接口的数据不会被篡改。 签名...

  • 软件设计模式-接口隔离

    这个原则是 明确了 如何设计对接口!怎么用接口。 从前面开始我们就知道了接口的好处,如何设计好的接口呢?那么接口隔...

网友评论

      本文标题:接口由谁来设计更妥当

      本文链接:https://www.haomeiwen.com/subject/vfodhktx.html