¿Qué es un SDK?
SDK son las siglas de Software Development Kit, lo que traduciéndolo a nuestro idioma sería un Kit de Desarrollo de Software. Mediante éste kit podemos desarrollar aplicaciones y ejecutar un emulador de la versión de Android (o de lo que sea). En Android todas las aplicaciones se ejecutan en Java.
(Software Development Kit - Kit de desarrollo de software o devkit). Un SDK es un conjunto de herramientas y programas de desarrollo que permite al programador crear aplicaciones para un determinado paquete de software, estructura de software, plataforma de hardware, sistema de computadora, consulta de videojuego, sistema operativo o similar.
Cuando se desarrolla una aplicación (para dispositivos móviles o de escritorio), es importante contar con herramientas adecuadas que nos asistan durante el proceso para ahorrar tiempo y esfuerzo sin descuidar la calidad del resultado final. Si solo nos valiéramos de un lenguaje de programación, un editor, un compilador y nuestra propia capacidad de resolución de problemas, deberíamos invertir demasiado tiempo en funciones que podrían ser elementales.
Un SDK (Software Development Kit), o kit de desarrollo de software, es un conjunto de herramientas que ayudan a la programación de aplicaciones para un entorno tecnológico particular. Es decir, las aplicaciones desarrolladas sobre el SDK estarán destinadas a algún sistema operativo, plataforma hardware, consola de videojuegos o paquete de software en especial. Son muchos los recursos que puede contener un SDK. Detallemos algunos de ellos:
Una interfaz de programación de aplicaciones (API). Puede verse como una abstracción del funcionamiento interno del entorno sobre el que vamos a trabajar. Se trata de un conjunto de funciones, rutinas, estructuras de datos, clases y variables que nos permiten manipular el mecanismo de la plataforma sin conocerlo internamente.
Un entorno de desarrollo integrado (IDE). Un editor que nos ayuda a escribir fácilmente el código fuente del programa. Generalmente, también brinda una interfaz amigable para dos aplicaciones fundamentales:
- Debugger. Permite testear el programa en cada paso de su ejecución.
- Compilador. Traduce el código fuente a lenguaje de máquina, obteniendo así un programa ejecutable.
- Código de ejemplo y otra documentación. Como punto de partida para empezar a desarrollar aplicaciones.
- Un emulador del entorno. Por ejemplo, si desarrollamos una aplicación para móviles desde una computadora de escritorio, nos permite saber cómo la vería el usuario final.
- Actualmente, plataformas como los sistemas operativos Android, iOS y Windows Phone ofrecen kits para desarrollar software que funcione sobre sus entornos, y muchas redes sociales tienen SDK específicos para desarrollar todo tipo de aplicaciones en diferentes lenguajes.
Los SDK incluyen herramientas de debugger, códigos de ejemplos, documentaciones, y muchas veces un entorno de programación IDE.
Algunos SDK son gratuitos y otros son comerciales.
Algunos ejemplos de SDK populares:
• DirectX SDK de Microsoft
• Java SDK de Sun Microsystems
• Net Yaroze de Sony Computer Entertainment
• Flex de Adobe
• The Eclipse SDK de The Eclipse Foundation
Cuando empiezas a programar muchas veces se complican los conceptos por que todos te suenan igual, en especial en estos tres, trate de hacer una pequeña analogía para aclarar un poco los conceptos.
La JVM (Java Virtual Machine) es la aplicación donde corren los programas hechos en Java, es nativa del sistema operativo y usualmente viene cargada por default en este. Con esta herramienta no es posible desarrollar, solo pude desplegarse aplicaciones. (El concepto de JVM lo tacamos más a fondo en nuestro primer ¿Por qué Java?). Recuerden “”Write once, run anywhere” esto se lo debemos a JVM una máquina virtual de proceso nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar y ejecutar instrucciones expresadas en un código binario especial (el Java bytecode), el cual es generado por el compilador del lenguaje Java.
La JVM es como un reproductor. Para que quede más claro que tal si lo ponemos así, para Windows es una cassetera, Mac un tocadiscos y Linux un reproductor de cd,en todos se reproducirá música pero cada uno necesita su fuente distinta
El JRE (Java Runtime Environment) es un conjunto de utilidades de Java contiene la JVM, imaginemos que este es el material necesario para configurar e instalar la JVM. Con esta herramienta tampoco es posible el desarrollo. Proceso del sistema operativo que permite correr la aplicación
El JRE es el cassete de Windows, el acetato de Mac y el cd de Linux, las interfaces para reproducir la música.
El JDK (Java Development Kit) es el kit para desarrolladores, contiene entre otras cosas el JRE y la JVM. l JRE actua como un “intermediario” entre el sistema operativo y Java. Cuando utilizamos un IDE (Que como usualmente se empieza a programar) no vemos en que momento nuestra máquina instalo el JDK, esto se debe a que usualmente nuestro IDE descarga por si solo uno y se encarga de instalarlo en muestra máquina.
El JDK como nos permite grabar sonidos en nuestro dispositivo y escucharlos.
Por ejemplo si quisiéramos desarrollar para Android tendríamos que bajar el SDK y configurarlo en nuestro IDE eclipse (Si te interesa dar click). El SDK es para android lo que es el JDK para Java, solo que como explicamos arriba estamos tan acostumbrados a que el IDE lo descarga y configura por nosotros que usualmente no le ponemos atención.
No hay comentarios.:
Publicar un comentario