Programación

ATD

ATD (Architectural Technical Debt) es un concepto que se refiere a las decisiones de diseño y arquitectura en el desarrollo de software que, aunque inicialmente pueden parecer rápidas y económicas, pueden generar problemas y costos adicionales a largo plazo. Estas decisiones a menudo resultan en una estructura de software que es difícil de mantener, escalar…

SOA

Introducción SOA (Service-oriented architecture) es una aproximación distinta a la habitual al diseño del software. SOA no es una tecnología; es un paradigma, un estilo de diseño. Gracias a SOA aplicaciones independientes pueden compartir datos evitando dependencias, este intercambio de datos se realiza utilizando servicios. Un servicio SOA se encarga de satisfacer una necesidad de…

Servicios Web

Servicios Web Los Servicios Web se pueden implementar mediante dos tecnologías: SOAP (Simple Object Access Protocol) y REST (REpresentational State Transfer). SOAP SOAP es un protocolo de acceso a servicios web que define un protocolo de comunicación basado en una especificación de intercambio de mensajes XML. WSDL (Web Services Description Language) permite definir un servicio…

REST

Introducción REST (Representational State Transfer, o transferencia de estado representacional) es un estilo de arquitectura software utilizado para diseñar aplicaciones de web distribuidas. Se basa en los siguientes principios o restricciones: Cliente – Servidor. Sin estado. La comunicación entre cliente y servidor debe ser sin estado. Sistema por capas. Entre el cliente y el servidor…

JSON

JSON (acrónimo de JavaScript Object Notation, ‘notación de objeto de JavaScript’) es un formato de texto sencillo para el intercambio de datos. Se trata de un subconjunto de la notación literal de objetos de JavaScript, aunque, debido a su amplia adopción como alternativa a XML, se considera un formato independiente del lenguaje. Una de las…

GraphQL

Características de GraphQL Declarativo. En GraphQL el cliente especifica los campos en los que está interesado y el servidor se asegura de que en la respuesta solo se devuelvan dichos campos. Jeráquico. Las consultas en GraphQL son jerárquicas. Fuertemente tipado. Arquitectura GraphQL comprende dos partes principales: el servidor y el cliente. Básicamente, un servidor implementa…

Swagger

Configuración Para añadir documentación a nuestra aplicación [Api Rest](Cómo crear un API REST con Spring Boot) se siguen los siguientes pasos: 1. OpenApi Se añade al pom.xml la siguiente dependencia: <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId> <version>2.2.0</version> </dependency> Y en la url http://localhost:8080/v3/api-docs ya podemos ver la documentación asociada a la api. 2. Integración con Swagger OpenApi ya…

Maven – Saltar tests

Para saltar la ejecución y compilación de los tests: mvn -Dmaven.test.skip=true install Para compilar los tests, pero no ejecutarlos: mvn -Dmaven.test.skip=true install

JPA

Java Persistence API, más conocida por sus siglas JPA, es una API de persistencia desarrollada para la plataforma Java EE. Maneja datos relacionales en aplicaciones usando la Plataforma Java en sus ediciones Standard (Java SE) y Enterprise (Java EE). La persistencia en este contexto cubre tres áreas: La API en sí misma, definida en el…

Buenas prácticas

Usar una estructura de proyecto estándar src ├── main │ ├── java Application/Library sources │ ├── resources Application/Library resources │ ├── filters Resource filter files │ └── webapp Web application sources │ └── test ├── java Test sources ├── resources Test resources         └── filters              …