2015-06-17 11 views
9

Ich lerne über den Google App Engine- und Googles-Datenspeicher von here und sie erwähnen weiterhin "Low-Level Java API".Was ist der Unterschied zwischen einer High-Level- und Low-Level-Java-API?

Was genau ist ein "Low-Level-Java API" und wie es von einem "High-Level-Java API" (was ich auch davon ausgehen, unterscheidet muss vorhanden sein, da es ein Low-Level ist ein?“

Google Suche ergab schlechte Ergebnisse für diese Frage

+0

Das Java Datastore SDK stellt eine unterstützte Low-Level-API für den Datenspeicher bereit. Es ist dort in der Dokumentation, zweiter Satz. – John

+0

@ user3360241 hast du meine Frage gelesen? Ich frage, was der Unterschied zwischen einer Low-Level-und High-Level-API ist (oder wenn es überhaupt existiert) – Speedy

+0

Es ist in der Dokumentation geschrieben. Fyi, ich stimme dir nicht zu, da die Frage an sich nicht schlecht ist. – John

Antwort

10

Lassen Sie uns zunächst sehen, welche Dokumentation sagt über diese -.

Das Java-Datastor SDK bietet einen unterstützten Low-Level-API für den Datenspeicher In der Dokumentation für das Datastor uns. Verwenden Sie diese Low-Level-API der Einfachheit halber.

Für Ihre Bequemlichkeit enthält das Java SDK jedoch auch Implementierungen der Java Data Objects (JDO) - und Java Persistence API (JPA) -Schnittstellen von Drittanbietern. Beachten Sie, dass diese nur für Ihre Bequemlichkeit zur Verfügung gestellt werden; Sie werden nicht von Google unterstützt. Darüber hinaus enthält das Java SDK weitere Frameworks von Drittanbietern, die die Verwendung von Datastore für Java-Entwickler vereinfachen sollen.

Wenn jemand auf Low-Level und High-Level bezieht, sprechen sie normalerweise über Abstraktionsniveau.

Abstraktion

ist eine Technik für Systeme Komplexität von Computer verwalten. Es funktioniert, indem es eine Komplexitätsebene festlegt, mit der eine Person mit dem System interagiert, wobei die komplexeren Details unterhalb der aktuellen Ebene unterdrückt werden. Der Programmierer arbeitet mit einer idealisierten Schnittstelle (normalerweise gut definiert) und kann zusätzliche Funktionalitätsebenen hinzufügen, die sonst zu komplex wären.

Um ein direktes Beispiel zu geben, bietet Sprache C Ihnen eine niedrigere API-Ebene für Computerressourcen als Java. In C ist es möglich, Garbage-Collection in Echtzeit nach Belieben des Programmierers zu machen, jedoch ist es sehr wahrscheinlich, dass sich die Mehrheits-Programmierer damit in einen Fuß schießen, als konkrete Vorteile zu erhalten.

Mit anderen Worten, Google bietet Ihnen offiziell Low-Level-API, die leistungsfähig ist, aber nicht so trivial zu verwenden. Es gibt Lösungen von Drittanbietern, die die Low-Level-API von Google in die High-Level-API abstrahieren und die Verwendung der API vereinfachen.

+1

ah, also dann ist eine High-Level-API etwas, das einfacher zu verwenden ist (d. H. Einfacher für den Benutzer/Computerprogrammierer). Und eine Low-Level-API ist eine sehr nah an der Metall-API, die sozusagen ausführlicher oder komplizierter ist. Ich hatte es aus irgendeinem Grund rückwärts in meinem Kopf. – Speedy

+1

ja, das ist richtig – John

Verwandte Themen