加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

Java的API计划实践

发布时间:2019-01-22 10:50:39 所属栏目:建站 来源:佚名
导读:Introduction 相识在计划Java API时应该应用的一些API计划实践。凡是,这些实践很有效,并确保API可以在模块化情形中正确行使,譬喻OSGi和Java平台模块体系(JPMS)。有些做法是划定性的,有些则是榨取性的。虽然,其他精采的API计划实践也合用。 OSGi情形

在OSGi情形中,可以添加和删除模块,因此可以顺应这种动态的API计划很是重要。该 OSGi Declarative Services specification 界说了OSGi的依靠注入模子,它支持这些动态,包罗注入工具的取消。

针对provider和consumer分别API

如简介中所述,API包的客户端有两个脚色:API consumer和API provider。 API consumer行使API,API provider实现API。对付API中的接口(和抽象类)范例,重要的是API计划清晰地记录哪些范例仅由API provider实现,而API consumer不行以实现。为了利便影象,我们把API provider必要实现的部门记为P,把API consumer必要实现的部门记为C。譬喻,侦听器接口凡是由API consumer实现,而且实例转达给API provider。

API provider对API 中P部门和C部门变动都很敏感。API provider必需实现API中P部门的范例的任何新变动,而且必需相识C部门的任何新变动。 API consumer凡是可以忽略API中P部门的变动,除非它想要变动以挪用新函数。但API consumer对API中C部门的变动很敏感,也许必要修改才气实现新成果。譬喻,在javax.servlet package, ServletContext由API provider(如servlet容器)实现。为ServletContext添加新要领将要求更新全部API provider以实现新要领,但API consumer不必变动,除非他们但愿挪用新要领。然而Servlet由API consumer实现,为Servlet添加新要领将要求修改全部API consumer以实现新要领,而且还必要修改全部API provider以行使新要领。就这样ServletContext相同于API的P部门,Servlet相同于API中C部门。

因为凡是有很多API consumer和很少的API provider,因此在思量变动API 中C部门时,API演变必需很是警惕。这是由于,您必要变动少数API provider以支持更新的API,但您不但愿在更新API时变动很多现有API consumer。 API consumer只必要在API consumer想要操作新API时举办变动。

Conclusion

下次计划API时,请思量这些API计划实践。然后,您的API将可用于模块化Java和非模块化Java情形。

英文原文: https://developer.ibm.com/articles/api-design-practices-for-java

【编辑保举】

  1. 面向开拓者的18个呆板进修平台
  2. 本月 Firefox 65 将插手 Flexbox Inspector 开拓者器材
  3. Java 11 毕竟比 8 快了几多?看看这个基准测试
  4. Java 编写的开源数据发掘器材——KEEL
  5. 从项目标 GitHub 星星数看2018年 JavaScript 生态圈
【责任编辑:张燕妮 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读