高级和低级Java API有什么区别?

21

我正在学习Google App Engine和Google数据存储,这里提到了“低级Java API”,那么什么是“低级Java API”,它与“高级Java API”有何不同(因为我认为也一定存在高级的Java API)?

谷歌搜索对这个问题的回答效果很差。


@user3360241 你看了我的问题吗?我在问低级 API 和高级 API 的区别是什么(或者它们是否存在)。 - Speedy
它写在文档中。顺便说一下,我没有对你的问题进行负评,因为问题本身并不差。 - John
2个回答

20

首先,让我们看看文档对此的描述 -

Java Datastore SDK提供了Datastore的支持低级API。在Datastore的文档中,为简化起见,我们使用这个低级API。

但是,为了方便起见,Java SDK还包括Java Data Objects(JDO)和Java Persistence API(JPA)接口的第三方实现。请注意,这些仅供您方便使用;它们不受Google支持。 此外,Java SDK还包括其他旨在简化Java开发人员使用Datastore的第三方框架。

当有人提到低级和高级时,他们通常谈论抽象级别。

抽象

是一种管理计算机系统复杂性的技术。它通过建立一个人与系统交互的复杂度级别,抑制当前级别下面更复杂的细节。程序员使用理想化的接口(通常是明确定义的),并可以添加额外的功能级别,否则将太复杂而无法处理。

直接举个例子,语言C提供给您比Java更低级别的API来访问计算机资源。在C中,程序员可以随时实时进行垃圾回收,但大多数程序员很可能会自食其果而不是获得具体的好处。

换句话说,Google为您提供了官方的低级API,它非常强大但不如简单易用。有第三方解决方案将Google的低级API抽象成高级API并使API更容易使用。


8
啊,那么高级 API 是指更易于使用的东西(即对用户/计算机程序员来说更简单)。而低级 API 则是一种非常接近底层的 API,可以说更冗长或更复杂。由于某些原因我曾经误解了它们的含义。 - Speedy

11

简单来说,低级别应用程序编程接口(API)通常更为详细,因此允许您更加详细地控制如何使用和实现它们内部的函数操作,而高级别API通常更为通用且相对简单,并提供比低级别API更多的功能。高级接口比较容易学习并使用它们来实现模型。它们使您可以在较短的时间内编写代码,并减少与细节相关的工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接