3

我非常喜欢演讲者的这个词Public APIJavaFX

  • 应该是什么Public API意思?
  • 反之,有Private API吗?
4

3 回答 3

3

最重要的事情,你应该了解私有和公共 API:

首先,从技术上讲,您可以同时使用它们。

在第二。当开发人员开发一些程序时,他们认为——这是给用户的,这就是我们的实现。随着时间的推移,程序可能会发生变化。当开发人员添加更改时——如果是关于私有 API 的更改——他们会做他们想做的一切,只是通过内部代码审查流程。但是,当出现需要更改公共 API 时 - 他们开始思考。如果确实需要,并且无法完成其他解决方案,他们会更改公共 API,并提供有关更改的所有信息(例如发行说明)。

通用流程——先行思考,开发公私API分离,让用户拥有稳定的产品功能API。

第三篇:关于 JavaFX:它的私有 API 是活的。产品正在开发中,这些 API 正在迅速变化。公共 API 大多是稳定的,并且公共 API 更改最常见的事情是添加类公开可用的方法(新功能)。

如果您想/需要使用私有 API 中的某些功能 - 这是您的风险。它可以更改,甚至删除。开发人员不负责在产品中保留私有功能或使用稳定的 API。

最后,您可以在 javafx-jira 中提交 RFE,以请求公开其功能。如果它真的是个好主意(由开发人员决定;可能是在公开讨论之后;关注投票结果) - 它可以完成。

于 2013-06-01T21:21:09.870 回答
2

公共 API 不是 JavaFX 术语。

这是一个通常适用于 Java 程序的术语。

程序的公共 API 在其所有公共类中都有以下所有内容:

  • 非私有且非包私有的类的字段
  • 不是包私有的接口
  • 非私有且非包私有的方法
  • 非私有且非包私有的成员类

公共 API 的同义词是“导出的 API”。这些是您的应用程序的功能,其他想要在他们自己的开发中使用您的应用程序的程序员可以访问这些功能。

“私有 API”只是上面未涵盖的程序的其他功能。这些类的私有成员是您的“实现细节”,只要这些更改不影响公共 API,您可以随意更改或编辑它们。

将实现细节与导出的 API 区分开来的能力是面向对象编程中的一个重要概念,尤其是 Java 编程中的一个重要概念。这种能力通常被称为“封装”。

于 2013-06-01T15:37:27.163 回答
2

javafx-namespace 中的所有类都是公共 API,在 JavaFX 的未来版本中不会被破坏,相比之下,com.sun.javafx 中的类是私有的,并且可以在不同版本之间更改

于 2013-06-01T16:48:59.143 回答