Glossary · Automation software engineering and architecture
Software development kit (SDK)
Also known as: SDK, Devkit
German: Software Development Kit (SDK)
In software engineering, a software development kit (SDK) is a collection of libraries, tools, documentation and samples that developers use to build applications for a specific platform, device, protocol or service.
- Software engineering
In one sentence
A software development kit (SDK) bundles libraries, tools, documentation and samples for building software for a specific platform.
Example
The drive manufacturer offers an SDK with a C library, header files and sample programs so customers can integrate the drive into their own motion software.
Explained in context
Context cards connect this term with others to answer one question. Also in British English and German.
How it applies
- Engineering: An SDK defines what developers can build on a platform. Its version must match the target firmware or runtime; mismatches are a frequent cause of integration problems.
- Product management: SDKs are products with their own releases, compatibility promises and support periods.
- Documentation: SDK documentation is developer documentation: getting-started guides, concept explanations, API references, samples and migration guides. Samples should build and run with the current SDK version; testing them in the pipeline keeps them correct.
SDK vs. API
An Application programming interface (API) is the interface definition. An SDK is a package that includes one or more API implementations plus tools, samples and documentation to use them.