Definition „Software Development Kit“

Was ist ein SDK?

| Autor / Redakteur: chrissikraus / Stephan Augsten

Über ein SDK stellt ein Software-, Service- oder Hardware-Anbieter hilfreiche Tools und Dokumentationen für Entwickler bereit.
Über ein SDK stellt ein Software-, Service- oder Hardware-Anbieter hilfreiche Tools und Dokumentationen für Entwickler bereit. (Bild: falconp4 - Pixabay.com / CC0)

In einem Software Development Kit, kurz SDK, finden Entwickler viele hilfreiche Ressourcen, die sie zur Erstellung einer Software mittels einer bestimmten Technologie benötigen: Dokumentationen, Werkzeuge, Bibliotheken und auch Beispiele.

Egal ob Firmware oder Smartphone-App: Wer Software für eine bestimmte Plattform entwickeln möchte, muss zuvor einige Dinge wissen – zum Beispiel welche Schnittstellen der Hersteller zur Verfügung stellt und wie mit ihnen gearbeitet werden kann. Viele Hersteller geben deshalb umfangreiche Software Development Kits (SDKs) für ihre Produkte heraus. Sie enthalten eine Sammlung an nützlichen Werkzeugen und Ressourcen, welche Entwicklern die Arbeit erleichtern sollen.

Alle wichtigen Ressourcen in einem Paket

Der genaue Inhalt eines SDK kann von Fall zu Fall sehr stark variieren, da er je nach Materie unterschiedlich komplex ausfällt. Meistens enthält das Kit mindestens die nötigen APIs für ein bestehendes System und Dokumentationen, die dem Entwickler Auskunft über verfügbare Schnittstellen oder den allgemeinen Aufbau geben. Mithilfe dieser Informationen erfährt der Entwickler, ob und wie seine Idee in das bestehende System integriert werden kann.

Hin und wieder sind auch Beispiele und kleine Testprojekte enthalten, die mögliche Anwendungen des SDK beleuchten oder den Einstieg in die Materie erleichtern. Manchmal sind zudem bestimmte Bibliotheken notwendig, damit die neue Software mit dem bestehenden System zusammenarbeiten kann oder spezielle Zusatzfunktionen verfügbar werden. Einige Szenarien erfordern außerdem besondere Tools oder spezielle Treiber, damit man neue Software für die Komponenten des Herstellers entwickeln kann.

Häufig stellen Hersteller SDKs für ihre Hard- oder Software kostenfrei zur Verfügung. Die Absicht dahinter ist, interessierten Entwicklern das Programmieren von Plug-ins oder Apps für das System möglichst einfach zu machen. Durch die so entstehende Vielfalt an Anwendungen gelingt es schließlich, den Mehrwert für Endnutzer zu steigern.

Ein simples Beispiel sind Smartphones: Ohne die zahlreichen Apps von Drittanbietern wären die smarten Mobiltelefone deutlich weniger vielseitig. Deshalb stehen für alle gängigen Smartphone-Plattformen SDKs zur Verfügung, mit denen ambitionierte Programmierer ihre Ideen realisieren und veröffentlichen können.

IDE zum SDK

Gelegentlich gehört im weitesten Sinn auch eine dedizierte Entwicklungsumgebung zum SDK. Wer native Apps für Android-Smartphones entwickeln möchte, kann hierfür zum Beispiel Android Studio verwenden. Die IDE wird speziell für die Entwicklung von Apps für Android angeboten.

Neben den nötigen technischen Ressourcen stellt sie viele Komfortfunktionen bereit, die die Arbeit unterstützen. Dazu gehören unter anderem Code-Vervollständigung, ein visueller Oberflächendesigner, ein Emulator für viele gängige Android-Smartphones inklusive Simulation verschiedener Sensoren sowie Werkzeuge zum Testen und Analysieren des Codes. Alternativ könnte man das Android SDK auch separat nutzen, um in einer anderen IDE wie Eclipse Apps für Android zu entwickeln, müsste dann aber auf die dedizierten Komfortfunktionen verzichten.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Datenstrom-Analyse für Java-Entwickler unter AWS

Amazon Kinesis Data Analytics

Datenstrom-Analyse für Java-Entwickler unter AWS

Die Echtzeit-Datenstrom-Analyse mit Amazon Kinesis ist jetzt auch für Java-Entwickler verfügbar. Hierfür können sie Apache Flink und das AWS SDK for Java als Bibliotheken in der integrierten Entwicklungsumgebung ihrer Wahl einbinden. lesen

MongoDB Mobile und Stitch Mobile Sync verfügbar

Datenbank-Sync für Mobile- und Serverless-Applikationen

MongoDB Mobile und Stitch Mobile Sync verfügbar

Mit MongoDB Mobile und Stitch Mobile Sync sollen Entwickler bessere Möglichkeiten erhalten, von überall auf die Datenbanken ihres Unternehmens zugreifen zu können. Anwendungen sollen damit einen Echtzeit-Zugriff auf Daten erhalten. lesen

Data-Lake-Strategie mit AWS Data Ingest umsetzen

Tools und Workflows zur Datenspeicherung in AWS, Teil 2

Data-Lake-Strategie mit AWS Data Ingest umsetzen

Die grundlegenden Technologien und Produkte, die AWS zur Datenspeicherung anbietet, haben wir bereits kennengelernt. Nun wollen wir in demonstrieren, wie Unternehmen mit den Mitteln von AWS eine Data-Lake-Strategie entwickeln können. lesen

Entwickler bauen auf Java 8 und IntelliJ IDEA

JVM Ecosystem Report 2018 von Snyk

Entwickler bauen auf Java 8 und IntelliJ IDEA

Das Java Development Kit, kurz JDK, hat mit dem Update auf Java 9 fundamentale Änderungen erfahren. Dies dürfte ein Grund dafür sein, dass Java 8 nach wie vor die verbreitetste Plattform für Anwendungen in der Produktivumgebung ist. lesen

AWS Boto3 installieren und konfigurieren

AWS-Ressourcen mit Python bereitstellen, Teil 1

AWS Boto3 installieren und konfigurieren

AWS-Nutzer können Ressourcen in der AWS-Public-Cloud auf verschiedenen Wegen provisionieren. Die programmatische Variante ist vor allem für Entwickler und in DevOps-Szenarien erste Wahl. Zu den zahleichen unterstützten SDKs gehört auch Boto3 für Python. lesen

Monitoring mit AWS CloudWatch

Infrastruktur-Metriken in der Cloud sammeln

Monitoring mit AWS CloudWatch

„Wir würden gerne unsere Infrastruktur, beispielsweise Amazon-EC2-Instanzen und auch die darauf laufenden Anwendungen, überwachen. Welche Dienste kommen für das Monitoring von Basisinfrastruktur und Software in der AWS Cloud in Frage?“ lesen

Einheitliche UX für Web und Mobile Apps

Pega Digital Experience API von Pegasystems

Einheitliche UX für Web und Mobile Apps

Front-End-Entwickler sollen mit der Pega Digital Experience API für eine einheitliche Benutzererfahrung über Web- und Mobile-Apps hinweg sorgen können. UI-Frameworks wie React und Angular sollen sich dabei mit dem User-Experience-Design-System von Pegasystems kombinieren lassen. lesen

Apps und Spiele für Android Oreo anpassen

Google Play fordert API Level 26

Apps und Spiele für Android Oreo anpassen

Neu entwickelte Android Apps und Spiele, die über Google Play verteilt werden, müssen mit dem morgigen Tag die aktuelle API-Stufe 26 vorweisen können. Dies garantiert die Lauffähigkeit unter Android 8.0 Oreo und höher. Ein paar Tipps von Google sollen bei der Umsetzung helfen. lesen

Microsoft kündigt Windows UI Library an

NuGet-Pakete für die UWP-XAML-Plattform

Microsoft kündigt Windows UI Library an

Microsoft hat eine Preview der Windows UI Library, kurz WinUI, online gestellt. Diese macht Fluent-Design-Elemente für Windows 10 UWP Apps über NuGet-Pakete zugänglich. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45385863 / Definitionen)