Construyendo una API RESTful con NodeJs y TypeScript
Hola, en este artículo resolveremos un desafío de código de ingeniería mediante la creación de una API RESTful que simule cómo funciona una máquina expendedora. ¡Disfrute! 😉
Desafío: diseñar un programa en forma de aplicación web.
- Una máquina expendedora que vende productos en base a cuatro (4) denominaciones de monedas (50 centavos, 1 rand, 2 rand y 5 rand) devuelve monedas si no hay productos.
- Cuando se carga la aplicación, carga datos sobre todas las instancias de los productos y monedas y los visualiza de alguna manera. (por ejemplo, una tabla con todos los datos).
- La aplicación debe tener algún mecanismo para actualizar todos los datos de la API sin volver a cargar toda la aplicación (por ejemplo, un botón de actualización de datos).
- La aplicación debe tener algún mecanismo para actualizar los datos de solo una sección (productos o monedas).
- La aplicación debe mostrar al usuario alguna indicación de que está actualizando / cargando nuevos datos.
¡Vamos! Ahora sabemos un poco de lo que se requiere para que nuestra solución cumpla con el requisito. Primero, nos centraremos en la parte de la aplicación que realiza el procesamiento pesado de datos, los cálculos, el manejo de las solicitudes entrantes y el envío de respuestas. Para hacer esto, vamos a construir una API usando NodeJs, Express y TypeScript.
API son las siglas de Application Programming Interface, un conjunto de definiciones y protocolos para crear e integrar software de aplicaciones. Una API permitirá que nuestro servicio / sistema se comunique con otros servicios / sistemas sin saber cómo se implementan. Esto puede simplificar el desarrollo de aplicaciones, ahorrar tiempo y dinero: las API le brindan flexibilidad, agilizan el diseño, la administración y el uso, y brindan oportunidades para la innovación. Esto significa que podemos construir la parte de la aplicación que realiza el procesamiento de datos (back-end) y hacer que funcione completamente, haciendo su trabajo, y luego tener un sistema diferente como una aplicación de front-end que se comunica con nuestro back-end. aplicación a través de esta API, ¡genial! 👍🏽
Conociendo nuestras herramientas e idiomas –
Como se mencionó anteriormente, crearemos una API RESTful. Usaremos estas herramientas / lenguajes: NodeJs, Express y TypeScript.
NodeJs es un entorno de ejecución de JavaScript de código abierto y multiplataforma. ¡Es una herramienta popular para casi cualquier tipo de proyecto!
Express es un marco web minimalista, rápido y sin supervisión para Node.js (lea ¿Qué es un marco en programación y por qué es útil aquí?)
TypeScript es un lenguaje de programación fuertemente tipado que se basa en JavaScript, lo que le brinda mejores herramientas a cualquier escala.
Instalación de nuestras herramientas e idiomas –
Navegue al sitio de NodeJs | https://nodejs.dev/download, siga las instrucciones allí para descargar e instalar NodeJs en su máquina, luego verifique que NodeJs se haya instalado correctamente ejecutando el siguiente comando node -v en su terminal o shell, luego presione la tecla enter, que debería imprimir la versión de NodeJs que se ha instalado.
En el momento de escribir esto, tenía instalada la versión de Node v14.16.0
. Puede que tenga uno más reciente; sigue siendo bueno. Sin embargo, si obtuvo una salida diferente que no está en el formato de la versión del nodo, probablemente significa que su instalación no fue exitosa. En este punto, le recomiendo que busque en Google cómo instalar Nodejs para obtener instrucciones más precisas y precisas sobre cómo instalarlo.
TypeScript, habiendo instalado NodeJs correctamente, ahora instala TypeScript globalmente para que podamos acceder a él desde cualquier directorio. Ejecute el siguiente comando.
npm install -g typescript
Nota: es posible que tenga que usar
sudo
en Mac si no tiene permiso o no se ejecuta comoadministrator
en una computadora con Windows.
Volvemos a nuestra terminal y ejecutamos el comando tsc -v
para verificar si esa instalación fue exitosa. Debería tener un resultado similar a la Version 2.2.1
, pero si tiene una versión superior / más reciente, está perfectamente bien, y si la instalación no se realizó correctamente, vuelva a Google para obtener una guía de instalación detallada.
También necesitamos Visual Studio Code, VS Code es un editor de código fuente increíblemente liviano pero poderoso que se ejecuta en su escritorio y está disponible para Windows, macOS y Linux. Viene con soporte incorporado para JavaScript, TypeScript y NodeJs. ¡Exactamente lo que necesitamos! Siga las instrucciones en pantalla en su sitio https://code.visualstudio.com/ y téngalo instalado también.
Todo bien para arrancar: 💯
Ahora hemos instalado todo lo que necesitamos en esta etapa. Las otras cosas como Express se instalarán cuando comencemos nuestra codificación / desarrollo real de la API RESTful.