SDK (Software Development Kit)

Un SDK (Software Development Kit) è una suite di strumenti per realizzare programmi e applicativi per ogni tipo di piattaforma operativa (sistemi operativi) e piattaforma hardware.

Un SDK semplifica la scrittura del codice web, grazie alle librerie e ai moduli precompilati di cui è costituito, senza dover scrivere il codice da zero.

Gli SDK vengono in genere messi a disposizione degli sviluppatori da chi trova interesse nel lasciare loro sviluppare app e siti per le proprie piattaforme.

I Software Development Kit possono variare molto tra di loro, ma in generale presentano tutti degli strumenti e funzioni comuni. Questi sono:

  • uno o più compilatori (per trasformare il codice sorgente dell’ app o sito web in un file eseguibile)
  • librerie standard dotate di API (per poterle utilizzare a proprio piacimento)
  • la documentazione necessaria all’utilizzo dell’ SDK stesso
  • informazioni sulle licenze per distribuire programmi creati con l’ SDK

A questi elementi, possono a volte aggiungersi:

  • uno o più debugger
  • compilatori per diversi linguaggi di programmazione
  • programmi per gestire le varie versioni o per interfacciarsi ad essi
  • editor di sorgenti (programmi per scrivere più velocemente o con più precisione)
  • IDE (Integrated Development Editor): editor di sorgenti con varie funzioni (completamento e formattazione codice, creazione interfaccia grafica, analisi del codice, mantenimento della documentazione relativa al codice sorgente…)

Al momento della compilazione dell’ app, lo sviluppatore dovrà solo richiamare le varie librerie e moduli al momento giusto, lasciando che sia il compilatore a inserire la funzione o l’elemento grafico dove serve.

Gli SDK (Software Development Kit) possono anche essere venduti insieme a dei programmi per permettere ai compratori di sviluppare ulteriormente i programmi comprati (secondo un utilizzo orientato al mercato).

Esistono inoltre delle versioni più specifiche di SDK, detti DDK (Driver Development Kits). I DDK vengono solitamente forniti dai proprietari delle piattaforme per lo sviluppo di driver per componenti hardware.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.