- Software development kit
-
Software development kit
Un software development kit (SDK) o kit de desarrollo de software es generalmente un conjunto de herramientas de desarrollo que le permite a un programador crear aplicaciones para un sistema concreto, por ejemplo ciertos paquetes de software, frameworks, plataformas de hardware, ordenadores, videoconsolas, sistemas operativos, etc.
Es algo tan sencillo como una interfaz de programación de aplicaciones o API (del inglés application programing interface) creada para permitir el uso de cierto lenguaje de programación, o puede, también, incluir hardware sofisticado para comunicarse con un determinado sistema embebido. Las herramientas más comunes incluyen soporte para la detección de errores de programación como un entorno de desarrollo integrado o IDE (del inglés Integrated Development Environment) y otras utilidades. Los SDKs frecuentemente incluyen, también, códigos de ejemplo y notas técnicas de soporte u otra documentación de soporte para ayudar a clarificar ciertos puntos del material de referencia primario.
Contenido
Los SDKs como técnica de marketing
Un programador suele recibir el SDK del desarrollador del sistema para el que se está escribiendo el programa. Incluso, a veces el SDK puede descargarse de Internet. De hecho, muchos SDKs se distribuyen gratuitamente para animar a los desarrolladores a usar el sistema o el lenguaje. Así pues podemos deducir que a veces son usados como herramientas de marketing, por ejemplo, Foo Products distribuye el Widget SDK gratis para animar a la gente a utilizarlo. En consecuencia mucha gente se anima a comprar muchos otros widgets suyos ya que pueden programarlos gratuitamente.
Incompatibilidad de licencias
Los SDKs pueden incluir licencias que los hacen incompatibles para crear software que se pretenda hacer para una licencia no compatible. Por ejemplo un SDK propietario probablemente será incompatible para el desarrollo de software gratuito. Y un SDK bajo la licencia GPL será, posiblemente, incompatible con el desarrollo de software propietario. Sin embargo los SDKs bajo la licencia LGPL suelen ser seguros para el desarrollo de software propietario.
SDKs para add-ons
Un SDK para un añadido (o add-on) de un determinado sistema operativo (por ejemplo, QuickTime para Mac OS) puede incluir también el software añadido en sí para ser usado para el desarrollo pero no necesariamente para la redistribución. Una situación interesante surge aquí entre plataformas donde es posible desarrollar aplicaciones que pueden iniciar la configuración de un sistema sin que el add-on esté instalado, y usar una rutina de petición de entorno de tipo Gestalt para determinar si dicho add-on está instalado, y otros donde la aplicación simplemente fallará al iniciarse. En otras palabras, es posible construir un único binario que funcione en configuraciones donde el add-on esté presente o no, con una funcionalidad reducida en este último caso.
Términos más específicos
Los proveedores de SDKs para ciertos sistemas o subsistemas pueden utilizar un término más específico que el de "software". Por ejemplo, tanto Microsoft como Apple proveen Driver Development Kits (DDK) o kits para el desarrollo de drivers para desarrollar drivers para dispositivos, y PalmSource distribuye su propio kit de desarrollo como el PalmOS Development Kit (PDK) o kit de desarrollo para PalmOS.
Ejemplos
- El SDK de Virtual Earth de Microsoft.
- El SDK de DirectX de Microsoft, en el que se basan, por ejemplo, la mayoría de juegos para Windows actuales.
- EL .Net Framework de Microsoft, en el que se basan muchas aplicaciones basadas en formularios.
- El SDK de Java de Sun Microsystems, en el que se basa, por ejemplo, la herramienta de lucha contra el vandalismo de CryptoDerk.
- Los kits de herramientas de Widgets, en los que se basan muchas utilidades desarrolladas con lenguajes de programación orientados a objetos
- Turbo Pascal
- Clipper
- Delphi
- El Source SDK, una herramienta diseñada por Valve en el cual puedes diseñar mods y mapas para juegos del motor Source. Disponible en Steam al comprar un juego que use el motor Source.
Véase también
- Lista de kits de desarrollo de software
Enlaces externos
- DirectX SDK de Microsoft
- Framework SDK para sistemas X86 Framework SDK para sistemas X86 a 64 bits y Framework SDK para sistemas IA64 de Microsoft
- Java 2 SDK de Sun Microsystems
- SDKs para Cámaras y voz de Olympus
- SDK para emuladores de terminalesde Cybele Software
- IDE para los lenguajes Lexico (en castellano) y C#
Categorías: Bibliotecas de programación | Interfaces de programación de aplicaciones | Programación | Siglas de informática
Wikimedia foundation. 2010.