Ein Software Development Kit stellt eine Sammlung von Werkzeugen, Bibliotheken, Informationen und anderen Ressourcen zur Verfügung, mit der sich Software in verschiedenen Programmiersprachen und für unterschiedliche Betriebssysteme, Hardwareplattformen oder Cloud-Computing-Umgebungen entwickeln lässt.
Tool-Sammlung für die Entwicklung von Software: Ein Software Development Kit soll Programmierern nicht nur die Arbeit erleichtern, sondern auch für eine schnellere Entwicklung neuer Anwendungen sorgen.
(Bild: Midjourney / KI-generiert)
Bei einem Software Development Kit handelt es sich um eine Sammlung von Tools, Bibliotheken, Informationen und anderen Ressourcen, mit der sich Software entwickeln lässt. Software Development Kits existieren für verschiedene Programmiersprachen, Hardwareplattformen, Betriebssysteme und Cloud-Computing-Umgebungen. Das Akronym für Software Development Kit lautet SDK. Ins Deutsche übersetzt bedeutet der Begriff Software-Entwicklungsbaukasten.
Aufgabe eines SDKs ist es, Entwicklern und Programmierern die Arbeit zu erleichtern und ihnen ein schnelles, unkompliziertes Erstellen neuer Anwendungen mit dem gewünschten Funktionsumfang zu ermöglichen. Die
Unser Portal vermittelt Fachwissen rund um Cloud Computing. Deshalb halten wir unsere Definitionen stets aktuell, um Expertenwissen auf dem neuesten Stand zu bieten.
Software Development Kits werden von Herstellern, Herausgebern oder Entwicklern von Programmiersprachen, Betriebssystemen oder Plattformen zusammengestellt und veröffentlicht. Sie sollen nach Möglichkeit alle Ressourcen beinhalten, die ein Entwickler für das Erstellen einer Anwendung benötigt. Bei bestimmten interpretierten Sprachen ist das Software Development Kit identisch mit der Laufzeitumgebung.
Lizenzierung von Software Development Kits
In der Regel werden Software Development Kits kostenlos bereitgestellt. Die Nutzung eines SDKs kann allerdings mit bestimmten Auflagen oder Vorgaben des Herausgebers verbunden sein – wie zum Beispiel die vertrauliche Behandlung bestimmter Informationen. SDKs unterliegen bestimmten Lizenzvereinbarungen. Diese sollen verhindern, dass die mit dem Kit entwickelte Software mit einer inkompatiblen Lizenz veröffentlicht wird.
Ein Software Development Kit kann proprietär oder frei lizenziert sein. SDKs mit proprietären Lizenzen sind für die Entwicklung von Open-Source-Software ungeeignet. Steht ein Software Development Kit unter General Public License (GPL), eignet es sich nicht für die Entwicklung proprietärer Software. SDKs unter LGPL-Lizenz (GNU Lesser General Public License) lassen sich unter Einhaltung bestimmter Vorgaben für das Erstellen von Software mit proprietären Code-Anteilen verwenden.
Die verschiedenen Bestandteile eines SDKs
Je nach Plattform, Programmiersprache oder Betriebssystem sind die Bestandteile eines SDKs sehr unterschiedlich. So ist beispielsweise bei bestimmten interpretierten Sprachen das Software Development Kit identisch mit der Laufzeitumgebung. In der Regel bestehen SDKs aus Werkzeugen, Bibliotheken, Informationen und anderen Ressourcen. Zu den konkreten Bestandteilen zählen zum Beispiel:
Liste mit Checkboxen
Application Programming Interfaces (APIs),
Compiler zum Übersetzen des Programmcodes,
Debugger zum Finden von Codefehlern,
Bibliotheken,
Editoren,
Laufzeitumgebungen,
Analyse- und Testwerkzeuge,
grafische Benutzeroberflächen,
Command-Line-Tools,
Treiber,
Netzwerkstacks und -protokolle,
Dokumentationen und Leitfäden,
vorgefertigte Programmkomponenten,
Beispiele und Testprojekte.
Abgrenzung zwischen SDK und API
Die Begriffe SDK und API werden immer wieder in ähnlichen Zusammenhängen genannt. Sie lassen sich aber deutlich voneinander abgrenzen. API steht für Application Programming Interface. Es handelt sich um eine Schnittstelle, die eine Kommunikation zwischen verschiedenen Anwendungen oder Plattformen mit definierten Methoden, Abläufen und Strukturen erlaubt. Die API tritt quasi als Vermittler auf und macht Informationen über verschiedene Anwendungen oder Plattformen hinweg verfügbar. In dieser Funktion ist sie ein unverzichtbarer Bestandteil von Software Development Kits. Um Software zu entwickeln, ist eine API alleine aber nicht ausreichend. Sie wird im SDK mit weiteren Ressourcen und Tools ergänzt.
Beispiele und Einsatzmöglichkeiten eines Software Development Kits
SDKs lassen sich einsetzen, um Software für spezifische Hardwareplattformen, Betriebssysteme oder Programmiersprachen zu erstellen. Abhängig vom jeweiligen Einsatzgebiet existiert eine Vielzahl verschiedener SDKs. Im Folgenden eine kleine Auswahl typischer Beispiele für Software Development Kits:
Liste mit Checkboxen
Java Development Kit (JDK) zum Entwickeln von Software in der Programmiersprache Java,
Android und iOS SDKs für die Entwicklung von Anwendungen für Smartphone-Betriebssysteme,
Windows und macOS SDKs für die Entwicklung von Software für Windows- und Apple-Rechner,
VMware SDKs wie vSphere SDK, vCenter SDK, vCloud SDK für die Entwicklung von Anwendungen für die VMware-Virtualisierungsplattform,
Nordic Semiconductor SDKs für die Entwicklung von Bluetooth- und Wireless-Anwendungen,
Raspberry Pi Pico SDK für die Entwicklung von Anwendungen für die Hardwareplattform des Mikrocontrollerboards Raspberry Pi Pico.
Um Anwendungen auf Cloud-Plattformen zu entwickeln, müssen viele verschiedene Cloud-Services angesprochen, unterschiedliche Programmiersprachen genutzt und individuelle Skripte erstellt werden. All diese Tätigkeiten manuell auszuführen, stellt Entwickler vor hohe Anforderungen.
Um den Cloud-Entwicklern die Arbeit zu erleichtern, bieten Betreiber von Cloud-Plattformen wie Google, Amazon oder Microsoft und weitere entsprechende SDKs an. Teilweise werden diese als Cloud Development Kits (CDKs) bezeichnet. Die SDKs stellen Tools und Oberflächen bereit, um Cloud-Ressourcen einer Cloud-Computing-Infrastruktur anzusprechen, sie gemäß den Anforderungen zu konfigurieren und individuelle Abläufe für eigene Anwendungen zu definieren. Über APIs ist die Verwendung verschiedener Programmiersprachen oder Entwicklungsumgebungen (Integrated Development Environments – IDEs) und die Einbindung unterschiedlicher Plattformen in die Cloud-Infrastruktur möglich.
Beispiele für Software Development Kits großer Cloud-Computing-Anbieter sind das AWS Cloud Development Kit von Amazon, das Azure SDK von Microsoft mit Client Libraries für .NET, Java, JavaScript/TypeScript, Python, Go, C, C++, Android, iOS oder das Google Cloud SDK für die Interaktion mit Produkten und Diensten der Google Cloud und mit Client-Bibliotheken für Programmiersprachen wie Java, Python, Node.js, Ruby, Go, .NET oder PHP.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Vorteile durch den Einsatz von Software Development Kits
Der Einsatz eines Software Development Kits bietet Entwicklern viele Vorteile. Sie erhalten ein Set aus Werkzeugen, Bibliotheken, Informationen, Beispielen und anderen Ressourcen, die das Erstellen von Software für spezifische Plattformen erleichtert. Anwendungen lassen sich schneller und mit weniger Aufwand programmieren und bereitstellen. Die Entwickler benötigen weniger Programmier-Know-how, um bestimmte Funktionalitäten einzubinden.
Durch die Verwendung von grafischen Benutzeroberflächen, das Kombinieren vordefinierter Programmelemente durch Drag-and-Drop-Verfahren und die Nutzung von fertigen Programmbeispielen lassen sich manuelle Programmierarbeiten deutlich reduzieren. Für die Herausgeber von SDKs bietet sich der Vorteil, dass Entwickler sich unter Umständen für ihr Produkt oder ihre Plattform entscheiden, da das bereitgestellte Software Development Kit im Vergleich zu Konkurrenzprodukten ein effizienteres, unkomplizierteres Arbeiten ermöglicht. Die Zahl der verfügbaren Anwendungen für bestimmte Plattformen oder Betriebssysteme mit guten SDKs steigt dementsprechend.
Cloud Computing Definitionen
Public, Private, Hybrid & Co.: Definitionen rund um Cloud Computing ▼
Alle relevanten Schlagworte aus dem Bereich Cloud Computing finden Sie auch gut erklärt in unseren Definitionen. Ganz im Sinne eines kleinen, aber feinen Glossars lesen Sie hier leicht verständliche Erklärungen zu den wichtigsten Begriffen. Als Service für Sie haben wir die hier erklärten Begriffe in unseren Beiträgen auch direkt mit den zugehörigen Lexikoneinträgen verlinkt. So können Sie die wichtigsten Begriffe direkt dort nachschlagen, wo sie im Text auftauchen.