Ett program för utveckling av programvara (SDK) är en uppsättning verktyg som tillhandahålls av tillverkaren av (vanligtvis) en hårdvaruplattform, operativsystem (OS) eller programmeringsspråk. SDK hjälper utvecklare att skapa applikationer som är specifika för den plattformen, systemet eller programmeringsspråket. Tänk på det ungefär som plastpåsen med verktyg som kommer förpackade med de delar av en byrå du har köpt för att montera dig själv. Du har vad du behöver för att få jobbet gjort, och vad som ingår i satsen varierar från tillverkare till tillverkare.
Vanligtvis kommer en grundläggande SDK att innehålla ett kompilatorgränssnitt för kompilatorer, felsökare och applikationsprogrammering (API: er), men de kan också innehålla något av följande:
- Dokumentation
- Bibliotek
- Redaktörer
- Runtime / utvecklingsmiljöer
- Test- / analysverktyg
- Drivrutiner
- Nätverksprotokoll
En bra SDK levererar alla komponenter som en utvecklare kan hitta nödvändiga när han skapar appar för den specifika produkten. Vissa SDK: er kommer också att innehålla ett exempel eller ett grundläggande testprojekt som hjälper utvecklare att komma igång så snabbt som möjligt.
Några exempel på programvaruutvecklingssatser är Java Development Kit (JDK), Windows 7 SDK, MacOs X SDK och iPhone SDK. Som ett specifikt exempel kan Kubernetes-operatören SDK hjälpa dig att utveckla din egen Kubernetes-operatör. Den innehåller API: er på hög nivå, verktyg för byggnadsställning och kodgenerering och tillägg för att täcka vanliga användarfall.
Ett API ingår i de flesta SDK: er för att ansluta nya appar eller projekt på källtextnivån. De innehåller också exempelkod, vilket ger utvecklare exempel på program och bibliotek som hjälper dem att lära sig att bygga grundläggande program. Därifrån kan de gå vidare till att utveckla mer komplexa appar.
Vissa SDK-filer innehåller dokumentation om hur man använder API: er, såväl som självstudier, vanliga frågor och exempel på grafik – eftersom det ibland kan ta en stund för en utvecklare att lära sig hur man använder en ny SDK. Av denna anledning är ett intuitivt programmeringsgränssnitt (eller mer omfattande dokumentation) till hjälp för att uppmuntra utvecklare att använda ett företags specifika program istället för en konkurrent.
På samma sätt kan en SDK vara ett bra sätt för ett företag att presentera utvecklare för sin produkt och uppmuntra dem att skapa appar med hjälp av deras plattform eller operativsystem. Av den anledningen är de flesta SDK gratis att använda – en utvecklare kan bara ladda ner den och börja programmera omedelbart.
Några saker att tänka på
Vissa SDK: er kan ha regler eller avtal som måste erkännas och skickas till innan de kan användas – särskilt för nya produkter i alfa- eller beta-steg – eller för programvara med algoritmer som inte avslöjas för allmänheten (inte öppen källkod). En SDK kan också omfattas av ett licensavtal, så att programvaran som skapas inte släpps under en inkompatibel licens.
En utvecklare måste ta hänsyn till dessa saker när han väljer vilken SDK att börja arbeta med. Till exempel:
- Ett SDK med en egen licens är oförenligt med utvecklingen av programvara med öppen källkod.
- SDK: er med en allmän publik licens (GPL) fungerar inte för utveckla egna appar
- Det finns förbehåll för att arbeta kring en Lesser General Public License (LGPL) för projekt med egna kodelement.
Varför välja Red Hat?
Öppna källkodsprogram utvecklas kontinuerligt av amatörer och proffs, eftersom deras SDK möjliggör kodning av nya mönster och funktionalitetsutvidgningar, som delas sedan med resten av samhället.
Red Hat samlar det bästa verktyget, lösningarna och servicen inom applikationsutveckling, och vi gör det på öppen källkod. Oavsett om du söker efter en plattform för att bygga din app på (Red Hat OpenShift), en runtime-miljö för att bygga dem i (Red Hat Runtimes) eller en utvecklingsmiljö med alla verktyg som behövs för att utveckla, testa och distribuera applikationer ( Red Hat CodeReady Studio), Red Hat har du täckt.