SDK vs. JDK
Ein Software Development Kit (auch als SDK oder Devkit bezeichnet) besteht aus einer Reihe von Entwicklungswerkzeugen. Es ermöglicht das Erstellen von Anwendungen für ein bestimmtes Softwarepaket, ein Software-Framework, eine Hardware-Plattform, ein Computersystem, eine Videospielkonsole, ein Betriebssystem oder eine Plattform, die einer der aufgelisteten ähnlich ist. SDKs umfassen alles, was so einfach ist wie eine API, in der einige Dateien mit einer bestimmten Programmiersprache verbunden sind oder hochentwickelte Hardware enthalten, um mit einem bestimmten eingebetteten System zu kommunizieren. Zu den am häufigsten verwendeten Tools in einem SDK gehören Debugging-Hilfen und ähnliche Dienstprogramme, die in einer integrierten Entwicklungsumgebung (oder IDE) dargestellt werden..
Das Java Development Kit (oder JDK) ist das am häufigsten verwendete SDK auf dem Markt. Das von Sun Microsystems für Java-Entwickler entwickelte JDK ist eine freie Software, die unter der GNU General Public License (oder GPL) veröffentlicht wurde. Es gibt eine Vielzahl von Komponenten, aus denen das JDK besteht. Diese Komponenten sind eine Auswahl von Programmierwerkzeugen. Dazu gehören unter anderem java, der Loader für alle Java-Anwendungen, der die vom javac-Compiler generierten Klassendateien interpretiert und interpretieren kann. javac, der Compiler, der den Quellcode in Java-Bytecode konvertiert; javaws, der Java Web Start-Launcher für die JNLP-Anwendungen; jmap, ein experimentelles Dienstprogramm, das eine Speicherzuordnung für Java ausgibt und in der Lage ist, freigegebene Objektspeicherzuordnungen oder Heapspeicherdetails eines bestimmten Prozesses zu drucken; und VisualVM, ein visuelles Tool, das mehrere Befehlszeilen-JDK-Tools sowie einfache Leistungs- und Speicherprofilierungsfunktionen integriert.
SDKs enthalten Beispielcode und technische Hinweise oder andere Dokumentationen, die diesen Code unterstützen, um die Klärung von Punkten aus dem primären Referenzmaterial zu erleichtern. Normalerweise erhält ein Softwareentwickler das SDK von einem Zielentwickler. Das SDK lässt sich somit relativ einfach aus dem Internet herunterladen. Viele SDKs sind kostenlos - hauptsächlich, um Entwickler zur Verwendung des Systems oder der Sprache zu ermutigen. Sie haben möglicherweise Lizenzen beigefügt, um sie für die Erstellung von Software ungeeignet zu machen, die unter einer inkompatiblen Lizenz entwickelt werden soll. Ein für ein Betriebssystem-Add-On entwickeltes SDK (z. B. QuickTime für Mac OS) kann die eigentliche Add-On-Software für Entwicklungszwecke enthalten, wenn diese nicht weitergegeben werden soll.
Das JDK ist eine erweiterte Teilmenge eines SDK. Sun bestätigt im Rahmen der Terminologie, dass das JDK die Teilmenge des SDK ist, das für das Schreiben und Ausführen von Java-Programmen verantwortlich ist. Was von diesem SDK übrig bleibt, besteht aus zusätzlicher Software (Anwendungsserver, Debugger und Dokumentation)..
Zusammenfassung:
1. Ein SDK ist ein Satz von Entwicklungstools, mit dem Anwendungen für bestimmte Softwarepakete oder Plattformen erstellt werden können. Das JDK ist das am häufigsten verwendete SDK und ist eine Erweiterung des SDK, die für das Schreiben und Ausführen von Java-Programmen verantwortlich ist.
2. Ein SDK enthält Beispielcode und technische Hinweise oder andere unterstützende Dokumentation. Das JDK enthält Komponenten, die eine Auswahl von Programmierwerkzeugen darstellen.