Un kit de desarrollo de software (en inglés, software development kit o SDK) es generalmente un conjunto de herramientas de desarrollo de software que permite a un desarrollador de software crear una aplicación informática para un sistema concreto, por ejemplo ciertos paquetes de software, entornos de trabajo, plataformas de hardware, computadoras, videoconsolas, sistemas operativos, etcétera.
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 de desarrollo de software más comunes incluyen soporte para la detección de errores de programación como un entorno de desarrollo integrado (IDE, por sus siglas en inglés) y otras utilidades. Los SDK frecuentemente también incluyen 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.
Los SDK pueden incluir licencia de software 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 libre. Y un SDK bajo la licencia GPL posiblemente será incompatible con el desarrollo de software propietario. Sin embargo, los bajo la licencia LGPL suelen ser seguros para el desarrollo de software propietario.
Un SDK para un complemento (add-on en inglés) de un determinado sistema operativo (p. ej. 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 esté instalado el complemento, y usar una rutina de petición de entorno de tipo Gestalt (de Mac OS) para determinar si dicho complemento 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 complemento esté presente o no, con una funcionalidad reducida en este último caso.
Si bien la mayoría de SDKs consisten exclusivamente de texto (los programas, sus licencias, instrucciones, etc.), en ciertas ocasiones han también incluido hardware, especialmente cuando este no se encuentra ampliamente difundido. El primer SDK para comunicaciones de campo cercano (NFC), y que fue publicado por AirTag en 2008, por ejemplo, incluyó las ambas mitades que son físicamente necesarias para transmitir y recibir.
Los proveedores de SDK 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 kits de desarrollo de controladores (DDK, del inglés driver development kit) para crear controladores para sus dispositivos, y PalmSource distribuye su propio kit de desarrollo como el Palm OS Development Kit (PDK).
Escribe un comentario o lo que quieras sobre SDK (directo, no tienes que registrarte)
Comentarios
(de más nuevos a más antiguos)