Software development tools that allow for the creation of applications for a certain software package.

A software development kit (SDK) is a collection of software tools used for developing applications for a specific device or operating system. An SDK includes one or more APIs (programming interfaces), documentation and can include programming tools and development environments (IDEs). SDKs are typically offered by the target system provider to build applications for their platform or system. SDKs for ArcGIS for example are available for .Net, Java, Python, mobile GIS, VBA and more. Since most companies want to encourage developers to create applications for their platform, SDKs are usually provided free of charge.