Web 开发中的接口定义总结

本文探讨了良好的接口设计特点及实现原则,包括接口的易读性、易用性、功能独立性和扩展性等,强调了接口设计时的单一职责原则、函数命名规范、文档与注释的重要性以及接口的安全性和性能提升。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、好的接口特性
(1)易读
(2)易用,调用简单,清晰明了
(3)功能独立
(4)易于扩展
2、好接口设计的基本原则
- 只做好,并做好一件事。接口定义时,尽量保证接口功能的单一性,不必特别在意接口数量的多少,功能单一的接口便于敏捷开发和调试,容易定位出问题。
- 函数名称清晰,明了,最好能让人一看就知道是做什么的,不恰当的函数名称,往往是不恰当设计的征兆
- 如果没有做到上面两点,就将函数分解只增加,不去删除函数与接口。当你去到一家新的公司,维护一套老的程序代码时尤为重要,此时代码层面来说可能存在冗余,但你却不能轻易的去删除老的代码,因为你可能并不清楚这个接口或者函数被谁在使用了,牵一发动全身。
- 实现永远不能影响接口。
- 最小化访问,尽量使用私有化成员变量,注意信息隐藏,如有必要,可对接口传输内容进行加密和解密处理,如果涉及对外的话,每个接口的定义都需要经过严格的审核。 (安全性方面考虑)
- 注意文档与注释。从个人实际的工作经验来看,开发,尤其是越好的开发,注释往往越少,在大多数公司的项目组,开发文档多数情况可能也没有,因为有文档就意味着需要有人进行维护,意味着需要有人进行投入,很少有公司可以做得非常规范的。但从效果来看,写好规范的注释和详细的设计文档是非常有好处的。

-便于人员交接 - 便于走读代码- 便于对业务理解 - 便于后续重新推敲优化代码

- 提高接口性能,不同的开发,实现用一个功能的代码可能相差十万八千里,与之而来的代码质量和性能也就可能存在较大的差异,要实现高性能的接口,除了开发自身不断提高技能,在一个项目团队中,开发前多讲方案进行评审是一个很好的办法。
- 平台无关,我作为一名JAVA工程师,因为Java本身就对平台没有依赖,Linux可以,Windows可以,这点是很好理解的。

3、好接口实现的基本原则

  • 不要到处拷贝代码,比如接口的注释就很容易在拷贝过程中,把错误的信息拷贝过来。
  • 原子性尽量在一个接口内保证(可以参照事务的原子性,相关的操作要么都成功,要么都失败,对于接口内的业务操作也是如此,代码上对于出现异常情况后的判断处理需做到严谨)
  • Fail-Fast原则,出错尽量早点返回,交给上层处理,不要勉强抢救。(这个是基本原则,实际项目中,有时可能因为业务需要,虽判断出现了错误,但程序代码仍需要继续往下执行,不阻塞流程往下跑)
  • 避免数据直接访问,而是提供访问方法
  • 注意参数和返回值类型(接口中交互一般使用JSON进行处理;返回类型中尽量避免使用8种基本类型,最好用对象返回;另外接口参数的类型最好定义为Final【
    接口中的变量是当作常量来设计的,它不但是final,而且还是public static的,也即interface中的变量一定是public static final的,换言之,这个变量实际上已经是个“常量”。
    原因如下:1. 接口中的数据对所有实现类只有一份,所以是static 2.要使实现类为了向上转型成功,所以必须是final的.
    】)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值