Iniciar sesión / Registrar Cuenta

Aplicaciones nativas de la nube

¿Qué es un SDK?

Jump to section

Un kit de desarrollo de software (SDK) es un conjunto de herramientas que ofrece generalmente el fabricante de una plataforma de hardware, un sistema operativo (SO) o un lenguaje de programación. Los SDK permiten que los desarrolladores de software creen aplicaciones para esa plataforma, ese sistema o ese lenguaje de programación específicos. Imagínelos como un kit de herramientas, algo así como la bolsa de herramientas que se incluye con un mueble para armar por su cuenta, pero aplicados al desarrollo de aplicaciones. De esa manera, usted tiene las piezas fundamentales (o las herramientas de desarrollo) que necesita para llevar a cabo el trabajo. Sin embargo, el contenido del kit depende de cada fabricante. 

Por lo general, un SDK básico incluye un compilador, un depurador y varias interfaces de programación de aplicaciones (API), aunque también puede incluir algunos de los siguientes elementos:

  • Documentación
  • Bibliotecas
  • Editores
  • Entornos de tiempo de ejecución o desarrollo
  • Herramientas de prueba o análisis
  • Controladores
  • Protocolos de red

Un SDK útil incluye todos los elementos que un desarrollador podría necesitar al momento de crear aplicaciones nuevas para el producto específico y su ecosistema. Algunos SDK también incluyen un ejemplo o proyecto de prueba básico para que los desarrolladores puedan comenzar a trabajar cuanto antes.

Algunos ejemplos de kits de desarrollo de software son el kit de desarrollo de Java (JDK), el SDK de Windows 7, el SDK de MacOS X y el SDK de iPhone. Por ejemplo, con el SDK para el operador de Kubernetes podrá desarrollar su propio operador de Kubernetes. Contiene API avanzadas, herramientas para crear la estructura central y generar código, y extensiones que abarcan los casos de uso frecuentes del operador. 

La mayoría de los SDK incluyen una API para conectar nuevos proyectos o aplicaciones móviles en el plano del texto fuente, en la línea de comandos. Por lo general, también cuentan con muestras de código, de modo que los desarrolladores tengan ejemplos de programas y bibliotecas cuando quieran diseñar programas básicos. Con estos recursos, pueden comenzar a optimizar y desarrollar aplicaciones complejas con mayor facilidad, así como depurar y agregar funciones nuevas según sea necesario.

Dado que los desarrolladores pueden demorar un poco en aprender a usar un kit de desarrollo de software nuevo, algunos SDK incluyen documentación sobre el uso de las API, tutoriales, preguntas frecuentes y gráficos de muestra. Por eso, una interfaz de usuario o de programación intuitiva (o documentación más completa) puede motivar a un desarrollador para que opte por utilizar el programa específico de una empresa, en lugar de la alternativa de la competencia.

De la misma forma, un kit de desarrollo de software puede ser una excelente oportunidad para que una empresa presente sus productos a los desarrolladores y los aliente a crear aplicaciones con su plataforma o sistema operativo de forma inmediata y en un entorno integrado. Por eso, la mayoría de los SDK pueden usarse sin costo; los desarrolladores solo deben descargarlos y comenzar a programar. 

Aspectos que se debe tener en cuenta

Es posible que algunos SDK incluyan reglas o acuerdos que se deban aceptar y enviar antes de usar el SDK, en especial aquellos para productos nuevos en etapa alfa o beta, así como para los sistemas de software con algoritmos que no son de acceso público (no son open source). También pueden estar sujetos a un acuerdo de licencia para que el sistema de software que se cree no se lance bajo una licencia que no sea compatible.

Los desarrolladores deberán tener en cuenta estos detalles cuando elijan con qué SDK comenzarán a trabajar. Por ejemplo:

  • Si el SDK tiene una licencia de propiedad, no es compatible con el desarrollo de software open source.
  • Los SDK que tengan una licencia pública general (GPL) no pueden utilizarse para el desarrollo de aplicaciones sujetas a una licencia de propiedad.
  • Hay algunos aspectos que se deben tener en cuenta al usar una licencia pública general reducida (LGPL) para proyectos con elementos de código sujetos a una licencia de propiedad. 

¿Por qué elegir Red Hat?

Tanto los aficionados como los especialistas desarrollan aplicaciones open source todo el tiempo, porque los SDK que utilizan permiten codificar nuevos diseños y ampliaciones de las funciones, que luego se compartirán con el resto de la comunidad. 

Red Hat combina las mejores soluciones, herramienta y servicio en el desarrollo de aplicaciones, y al estilo open source. Ya sea que busque una plataforma para diseñar su aplicación (Red Hat OpenShift), un entorno de tiempo de ejecución donde crearla (Red Hat Runtimes) o un entorno con todas las herramientas necesarias para desarrollar, depurar, probar e implementar aplicaciones (Red Hat CodeReady Studio), Red Hat tiene la solución para usted.

Obtenga más información: documentación sobre las API y generación de SDK automatizadas