Se desarrolló una aplicación que trata de una interfaz entre el cliente y dos API externas: la primera es la API de OpenWeather para obtener el clima de un lugar, mostrándonos varios datos del clima actual de esa ubicación, la seguna es la API de Google Maps para visualizar el sitio en un mapa global.
La arquitectura de los servicios se muestra a continuación:
Para la implementación, contamos con un front-end, que nos mostrará todos los datos necesarios para dar un vistazo al clima de una ubicación, junto a un mapa de esta ubicación, este front-end se conectará a una API funcionando en Heroku, la cual se comunicará a su vez con la API correspondiente en OpenWeather, y que cuenta con un sistema de caché en memoria que guarda durante 5 minutos las peticiones realizadas para evitar la sobrecarga en el API externo.
El proyecto puede ser extendido colocando una capa de clima sobre el mapa mostrado, también podría actualizarse en tiempo real el clima de las ubicaciones, y poder mostrar múltiples ubicaciones a al vez.
Clone el proyecto utilizando el siguiente comando:
git clone https://github.com/danielrincon-m/RINCON-ARSW-T2.git
Para ejecutar el proyecto deberá contar con una instalación de Maven en su sistema, puede obtenerlo desde la página oficial.
Luego de tener el proyecto, debe navegar al directorio principal y ejecutar el comando:
mvn spring-boot:run
Un IDE que soporte proyectos Java, o una instalación de Maven en su sistema, puede obtenerlo desde la página oficial.
Las pruebas pueden ser ejecutadas desde la sección de pruebas de su IDE o si tiene maven puede navegar a la carpeta principal del proyecto y ejecutar el comando
mvn test
La documentación del proyecto puede ser encontrada en la carpeta docs.
También puede ser generada con Maven, clonando el proyecto y ejecutando el siguiente comando en la carpeta TempConverter:
mvn javadoc:javadoc
- Visual Studio Code - IDE de desarrollo
- Maven - Manejo de Dependencias
- JUnit - Pruebas unitarias
- GitHub - Repositorio de código
- Spring-boot - Framework web
- REST Assured - Herramienta de pruebas para el API REST
Daniel Felipe Rincón Muñoz: Planeación y desarrollo del proyecto - Perfil de GitHub
Este proyecto se encuentra licenciado bajo GNU General Public License - consulte el archivo LICENSE.md para más detalles.