Línea de comandos vs UI
Línea de comandos
Todos los sistemas operativos incluyen una herramienta para trabajar con comandos del sistema, esa herramienta es la consola de comandos o terminal.
Normalmente cuando programamos necesitamos de la consola de comandos para ejecutar el programa (y también para compilarlo si el lenguaje es compilado).
Por ejemplo, para ejecutar un archivo con código del lenguaje interpretado Python utilizaríamos el siguiente comando:
python micodigo.py
En este ejemplo python es el intérprete y micodigo.py es el archivo con el código Python.
Por el momento solo veremos este concepto, los comandos utilizados para cada lenguaje junto con los pasos para ingresar a la consola de comandos los veremos en el libro correspondiente a cada lenguaje.
Entrada y salida de datos
Cuando un software está pensado para ser utilizado desde la consola de comandos, este normalmente puede recibir valores de entrada y exponer valores de salida.
Incluso anque el software no esté pensado para recibir valores de entrada, podemos utilizar la salida a consola para imprimir valores de prueba de la misma forma en la que lo hicimos en gran parte de los ejemplos vistos en el libro cuando utilizamos la función print() del lenguaje Dart.
Volviendo al ejemplo de la ejecución de un software en Python, si hablamos de un código que recibe un nombre e imprime un saludo, el comando en consola y su salida se verían como en el siguiente ejemplo:
python saludo.py Juan
Hola Juan
La primer línea es el comando de ejecución y la segunda línea es la salida en consola que se produce.
UI web
Una interfaz de usuario web permite a un usuario interactuar con el software utilizando un navegador web.
Esta interfaz web estará construida con elementos HTML, con estilos CSS, y con funcionalidades en el lenguajes JavaScript. (Más información en el libro HTML+CSS y en el libro JavaScript).
Hoy en día no es completamente necesario aprender HTML, CSS y JavaScript. Existen lenguajes como TypeScript o Dart que permiten convertir su código a JavaScript optimizado.
También existen tecnologías como Flutter, la cual se encarga de todos los aspectos anteriormente mencionados, permite programar en un solo lenguaje (Dart) y compilar el código para múltiples plataformas, incluyendo la plataforma web.
UI de escritorio
Existen muchas bibliotecas para desarrollar interfaces gráficas para software de escritorio, es decir, software que se puede instalar o directamente ejecutar en un sistema operativo Windows, Linux o macOS.
Algunas de estas bibliotecas son específicas de un sistema operativo particular y otras son completamente multiplataforma.
Algunos ejemplos son:
- GTK+
- Qt
- Swing
- Unity
Veremos definiciones, ejemplos y codelabs de ellas en los libros de cada lenguaje.
Consigue la última versión
Este libro se actualiza frecuentemente corrigiendo errores y agregando nuevo contenido.
Puedes descargar gratis la versión más reciente de este libro directamente desde leanpub.com.
También puedes enviar tus sugerencias o avisarnos de algún error que hayas encontrado, utilizando este formulario de contacto.