Software development kit
SDK (ang. Software Development Kit) – zestaw narzędzi dla programistów niezbędny w tworzeniu aplikacji korzystających z danej biblioteki (np. DirectX SDK), pod dany system (np. Microsoft Platform SDK), sprzęt itp.
Na SDK najczęściej składają się:
- dokumentacja
- pliki nagłówkowe dla danego języka programowania
- przykładowe kody źródłowe
- skompilowane biblioteki(w wypadku SDK dla jakiejś biblioteki)
- kod źródłowy biblioteki(w zależności od licencji i typu SDK)
Ważną cechą SDK jest licencja, na której jest ono udostępniane. Z niej wynikają dodatkowe ograniczenia w korzystaniu (np. zakaz wykorzystania do pewnych zastosowań) oraz ponoszone koszty (np. opłaty uzależnione od sprzedaży wytworzonego rozwiązania).
SDK zawiera często przykładowe fragmenty kodów i gotowe aplikacje zbudowane w oparciu o dokumentację i pliki nagłówkowe bibliotek dostępnych w SDK. Dostarczenie działającego kodu źródłowego stanowi formę jego dokumentacji, czytelną dla programisty.
W zależności od zastosowania twórcy SDK decydują się czasem nadać zestawowi unikalną nazwę. Sytuacja taka istnieje np. w przypadku SDK wspomagającego tworzenie sterowników programowych do urządzeń komputerowych. W przypadku Microsoftu i Apple Computer zestaw taki nazywa się Driver Development Kits (DDK). Podobnie SDK wspomagające tworzenie oprogramowania dla urządzeń przenośnych pracujących pod kontrolą PalmOS nazywa się PalmOS Development Kit (PDK).
Przykłady SDK
- Facebook C# SDK
- JDK (Java Development Kit)
- Nokia Series 60 SDK – umożliwia tworzenie oprogramowania na telefony komórkowe firmy Nokia z serii 60.
- DirectX SDK – multimedialna biblioteka Microsoftu
- MobileSpeech SDK – Speech Recognition SDK, Lab9 Solutions
- Microsoft Flight Sim SDK
- Surface SDK
- OpenAL (OpenAL)