SDK vs JDK
Un kit de desarrollo de software (también conocido como SDK o devkit) es un conjunto de herramientas de desarrollo. Permite la creación de aplicaciones para un determinado paquete de software, marco de software, plataforma de hardware, sistema informático, consola de videojuegos, sistema operativo o cualquier plataforma similar a cualquiera de las enumeradas. Los SDK van desde cualquier cosa tan simple como una API en la forma en que algunos archivos interactúan con un lenguaje de programación particular o incluyen hardware sofisticado para comunicarse con un determinado sistema integrado. Algunas de las herramientas más comunes que se encuentran en un SDK incluyen ayudas de depuración y utilidades similares que se presentan en un entorno de desarrollo integrado (o IDE).
El Kit de desarrollo de Java (o JDK) es el SDK más utilizado en el mercado. Desarrollado por Sun Microsystems para desarrolladores de Java, el JDK es un software gratuito que se lanzó bajo la Licencia Pública General de GNU (o GPL). Hay una gran cantidad de componentes que componen el JDK. Estos componentes son una selección de herramientas de programación. Incluyen, pero no se limitan a java, el cargador para todas las aplicaciones Java que interpreta y es capaz de interpretar los archivos de clase generados por el compilador javac; javac, que es el compilador que convierte el código fuente en un bytecode Java; javaws, que es el iniciador de Java Web Start para las aplicaciones JNLP; jmap, que es una utilidad experimental que genera un mapa de memoria para Java y puede imprimir mapas de memoria de objetos compartidos o acumular detalles de memoria de un proceso determinado; y VisualVM, que es una herramienta visual que integra varias herramientas JDK de línea de comandos y un rendimiento ligero y capacidades de generación de perfiles de memoria.
Los SDK incluyen códigos de muestra y notas técnicas u otra documentación que respalde este código para ayudar a aclarar puntos del material de referencia principal. Por lo general, un ingeniero de software recibe el SDK de un desarrollador objetivo. De este modo, SDK se descarga fácilmente desde Internet. Muchos SDK son gratuitos, principalmente para animar a los desarrolladores a usar el sistema o el idioma. Es posible que tengan licencias adjuntas para que no sean aptas para desarrollar software que se pretende desarrollar bajo una licencia incompatible. Un SDK desarrollado para un complemento de SO (QuickTime para Mac OS, por ejemplo) puede incluir el complemento en sí mismo del software para uso de desarrollo, si no se redistribuye.
El JDK es un subconjunto extendido de un SDK. Sun reconoce que, bajo la terminología, el JDK es el subconjunto del SDK que es responsable de escribir y ejecutar programas Java. Lo que queda de este SDK está formado por software adicional (servidores de aplicaciones, depuradores y documentación).
Resumen:
1. Un SDK es un conjunto de herramientas de desarrollo que permite crear aplicaciones para ciertos paquetes de software o plataformas; El JDK es el SDK más utilizado y es una extensión del SDK responsable de escribir y ejecutar programas Java..
2. Un SDK incluye código de ejemplo y notas técnicas u otra documentación de respaldo; El JDK incluye componentes que son una selección de herramientas de programación..