# Equip de desenvolupament de programari

Un equip de desenvolupament de programari o SDK (sigles en anglès de software development kit) és generalment un conjunt d'eines de desenvolupament de programari que permet al programador crear aplicacions per a un sistema concret, per exemple certs paquets de programari, entorns de treball, plataformes de maquinari, ordinadors, videoconsoles, sistemes operatius, etc.
És també una interfície de programació d'aplicacions o API (de l'anglès application programing interface) creada per permetre l'ús d'un llenguatge de programació, o pot, també, incloure maquinari sofisticat per comunicar-se amb un determinat sistema incrustat. Les eines més comunes inclouen suport per a la detecció d'errors de programació com un entorn de desenvolupament integrat o IDE (de l'anglès Integrated Development Environment) i unes altres utilitats. Els SDK freqüentment inclouen, també, codis d'exemple i notes tècniques de suport o documentació de suport per ajudar a aclarir certs punts del material de referència primari.

## Els SDK com a tècnica de màrqueting

Un programador sol rebre el SDK del desenvolupador del sistema pel qual s'està escrivint el programa. Fins i tot, de vegades el SDK pot descarregar-se d'Internet. De fet, molts SDKs es distribueixen gratuïtament per animar als desenvolupadors a usar el sistema o el llenguatge. Així doncs podem deduir que de vegades són usats com a eines de màrqueting, per exemple, Foo Products distribueix el Giny SDK gratuïtament per animar a la gent a utilitzar-lo. En conseqüència molta gent s'anima a comprar molts altres ginys seus, ja que poden programar-los gratuïtament.

## Incompatibilitat de llicències

Els SDK poden incloure llicències que els fan incompatibles per crear programari que es pretengui fer per a una llicència no compatible. Per exemple un SDK propietari probablement serà incompatible per al desenvolupament de programari gratuït. I un SDK sota la llicència GPL serà, possiblement, incompatible amb el desenvolupament de programari propietari. No obstant això, els SDKs sota la llicència LGPL solen ser segurs per al desenvolupament de programari propietari.

## SDK per a connectors

Un SDK per a una extensió (o add-on) d'un determinat sistema operatiu (per exemple, QuickTime per a Mac OS) pot incloure també el programari afegit en si per ser usat per al desenvolupament però no necessàriament per a la redistribució. Una situació interessant sorgeix aquí entre plataformes on és possible desenvolupar aplicacions que poden iniciar la configuració d'un sistema sense que l'add-on estigui instal·lat, i usar una rutina de petició d'entorn de tipus Gestalt per determinar si aquest add-on està instal·lat, i uns altres on l'aplicació simplement fallarà en iniciar-se. En altres paraules, és possible construir un únic binari que funcioni en configuracions on l'add-on estigui present o no, amb una funcionalitat reduïda en aquest últim cas.

## Termes més específics

Els proveïdors de SDK per a certs sistemes o subsistemes poden utilitzar un terme més específic que el de "programari". Per exemple, tant Microsoft com Apple proveeixen Driver Development Kits (DDK) o kits per al desenvolupament de controladors per desenvolupar controladors per a dispositius, i PalmSource distribueix el seu propi kit de desenvolupament com el PAMS Development Kit (PDK) o kit de desenvolupament per PAMS.

## Exemples

* El SDK de Virtual Earth de Microsoft
* El SDK de DirectX de Microsoft, en el qual es basen, per exemple, la majoria de videojocs per a Windows actuals
* EL .Net Framework de Microsoft, en el qual es basen moltes aplicacions basades en formularis
* El SDK de Java de Sun Microsystems, en el qual es basa, per exemple, l'eina de lluita contra el vandalisme de CryptoDerk
* Els kits d'eines de Ginys, en els quals es basen moltes utilitats desenvolupades amb llenguatges de programació orientades a objectes
* Turbo Pascal
* Clipper
* Delphi
* El Source SDK, una eina dissenyada per Valve en el qual pots dissenyar mods i mapes per a videojocs del motor Source. Disponible per Steam en comprar un joc que usi el motor Source
* L'SDK d'Android, elaborat per Google per al seu sistema homònim

## Vegeu també

* API

## Enllaços externs

* DirectX SDK de Microsoft
* Entorn de treball SDK per a sistemes X86 Entorn de treball SDK per a sistemes X86 a 64 bits i Entorn de treball SDK per a sistemes IA64 de Microsoft