Repaso de Java y Arquitectura de Software

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/70

flashcard set

Earn XP

Description and Tags

Colecci贸n de t茅rminos t茅cnicos sobre Programaci贸n Orientada a Objetos, Spring Boot, Microservicios, Bases de Datos, DevOps y Testing basados en Java.

Last updated 12:56 AM on 6/25/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

71 Terms

1
New cards

Encapsulamiento

Ocultar el estado interno de un objeto y obligar a que todo acceso sea a trav茅s de m茅todos p煤blicos (getters y setters).

2
New cards

Herencia

Mecanismo que permite a una clase nueva adquirir las propiedades y m茅todos de una clase existente.

3
New cards

Polimorfismo

La capacidad de un objeto de tomar muchas formas, permitiendo que un mismo m茅todo act煤e de manera diferente seg煤n el objeto que lo ejecute.

4
New cards

Abstracci贸n

Enfocarse en qu茅 hace un objeto en lugar de c贸mo lo hace, ocultando los detalles complejos.

5
New cards

HashMap

Estructura de datos que no es segura para hilos (not thread-safe); si varios hilos lo modifican a la vez se rompe, pero es m谩s r谩pido.

6
New cards

ConcurrentHashMap

Estructura segura para hilos (thread-safe) que bloquea solo partes del mapa (segmentos) para permitir accesos simult谩neos sin perder rendimiento.

7
New cards

Interfaz funcional

Una interfaz que tiene exactamente un m茅todo abstracto y se usa como base para las expresiones Lambda; ejemplos incluyen Predicate, Function y Consumer.

8
New cards

Streams

Una secuencia de elementos que permite procesar colecciones de datos de forma declarativa (filtrar, mapear, transformar) sin modificar la fuente original.

9
New cards

Optional

Un contenedor que puede o no contener un valor no nulo, utilizado para evitar el NullPointerException de forma elegante.

10
New cards

== vs equals()

El operador == compara referencias de memoria en objetos, mientras que equals() compara el contenido o valor l贸gico de los objetos.

11
New cards

Checked vs Unchecked Exceptions

Las Checked (ej. IOException) son obligatorias de manejar por el compilador; las Unchecked heredan de RuntimeException y suelen ser errores de l贸gica del programador.

12
New cards

Spring Boot

Extensi贸n de Spring Framework que elimina la configuraci贸n pesada (boilerplate) mediante la filosof铆a de "convenci贸n sobre configuraci贸n".

13
New cards

Bean

Un objeto que es instanciado, ensamblado y administrado por el contenedor de Inversi贸n de Control (IoC) de Spring.

14
New cards

@Component

Anotaci贸n gen茅rica que le indica a Spring que una clase es un componente administrado para crear un Bean de ella.

15
New cards

@Service

Especializaci贸n de @Component que marca a la clase como parte de la capa de negocio o l贸gica.

16
New cards

@Repository

Especializaci贸n de @Component destinada a la capa de acceso a datos (DAO) que traduce autom谩ticamente excepciones de la base de datos a excepciones de Spring.

17
New cards

Inyecci贸n de Dependencias

Patr贸n de dise帽o donde un objeto no crea las clases que necesita, sino que Spring se las inyecta desde fuera.

18
New cards

@Autowired

Anotaci贸n que le pide a Spring buscar e inyectar autom谩ticamente la dependencia requerida en ese lugar.

19
New cards

@Configuration

Indica que una clase contiene m茅todos anotados con @Bean para definir configuraciones personalizadas del framework.

20
New cards

@Transactional

Asegura que un m茅todo se ejecute dentro de una transacci贸n de base de datos, realizando un rollback autom谩tico si algo falla.

21
New cards

Spring Actuator

Herramienta que expone endpoints como /health o /metrics para monitorear el estado y la salud de la aplicaci贸n en producci贸n.

22
New cards

Microservicio

Enfoque de arquitectura donde una aplicaci贸n se divide en servicios peque帽os, independientes, acoplados de forma laxa y comunicados por red.

23
New cards

API Gateway

Punto de entrada 煤nico para todos los clientes que se encarga del enrutamiento, autenticaci贸n, control de tr谩fico y balanceo de carga.

24
New cards

Service Discovery

Registro din谩mico (como Netflix Eureka) donde cada microservicio se registra para que los dem谩s sepan en qu茅 direcci贸n IP y puerto encontrarlo.

25
New cards

Circuit Breaker

Patr贸n que evita fallos en cascada; si un servicio falla repetidamente, el circuito se "abre" y devuelve una respuesta r谩pida de error o por defecto.

26
New cards

Resilience4j

Biblioteca ligera dise帽ada para sistemas distribuidos que implementa patrones como Circuit Breaker, Rate Limiter, Retry y Bulkhead.

27
New cards

Escalabilidad horizontal

Aumentar la capacidad del sistema a帽adiendo m谩s servidores o instancias a la infraestructura.

28
New cards

Observabilidad

Capacidad de entender el estado interno de un sistema mediante tres pilares: M茅tricas, Logs y Trazas (Traces).

29
New cards

Programaci贸n reactiva

Paradigma orientado al manejo de flujos de datos as铆ncronos y al cambio, dise帽ado para procesar eventos sin bloquear hilos de ejecuci贸n.

30
New cards

Mono

Publicador reactivo de la librer铆a Reactor que emite 00 o 11 elemento (o un error).

31
New cards

Flux

Publicador reactivo de la librer铆a Reactor que emite de 00 a NN elementos.

32
New cards

No bloqueante

Significa que el hilo que inicia una operaci贸n no se queda esperando a que termine, liber谩ndose para otras tareas hasta que los datos est茅n listos.

33
New cards

Backpressure

Mecanismo que permite al consumidor decirle al proveedor cu谩ntos datos puede procesar a la vez para evitar saturarse.

34
New cards

Spring WebFlux vs Spring MVC

Spring MVC usa hilos bloqueantes (Tomcat), mientras que WebFlux se basa en bucles de eventos no bloqueantes (Netty).

35
New cards

Schedulers.boundedElastic()

Componente de programaci贸n reactiva que gestiona hilos para tareas que son bloqueantes.

36
New cards

REST

Estilo de arquitectura para sistemas distribuidos basado en el protocolo HTTP para la transferencia de datos.

37
New cards

OpenAPI

Especificaci贸n est谩ndar de descripci贸n de interfaz para APIs REST, escrita habitualmente en JSON o YAML.

38
New cards

Swagger

Conjunto de herramientas que implementan la especificaci贸n OpenAPI para generar documentaci贸n visual e interactiva.

39
New cards

OAuth2

Protocolo est谩ndar de la industria para la autorizaci贸n que permite acceso limitado a servicios de terceros sin compartir contrase帽as.

40
New cards

JWT (JSON Web Token)

Est谩ndar abierto para transmitir informaci贸n de forma segura como un objeto JSON inmutable y firmado digitalmente.

41
New cards

Autenticaci贸n vs Autorizaci贸n

La autenticaci贸n responde a "驴Qui茅n eres t煤?", mientras que la autorizaci贸n responde a "驴Qu茅 tienes permiso de hacer?".

42
New cards

CORS (Cross-Origin Resource Sharing)

Mecanismo de seguridad del navegador que bloquea peticiones desde dominios distintos al del servidor a menos que haya permiso expl铆cito.

43
New cards

Refresh Token

Token de larga duraci贸n usado para solicitar un nuevo Access Token cuando este ha expirado sin pedir credenciales al usuario.

44
New cards

JUnit

Framework est谩ndar en Java para escribir y ejecutar pruebas automatizadas, principalmente unitarias.

45
New cards

Mockito

Framework de simulaci贸n (mocking) usado para aislar la clase bajo prueba de sus dependencias reales mediante objetos simulados.

46
New cards

Mock

Objeto falso que imita el comportamiento de una dependencia real permitiendo programar sus retornos.

47
New cards

Prueba unitaria

Prueba automatizada que verifica el funcionamiento de una peque帽a pieza de c贸digo aislada sin interactuar con DB o redes.

48
New cards

Prueba de integraci贸n

Prueba que verifica que m煤ltiples componentes o sistemas interact煤an correctamente entre s铆.

49
New cards

Cobertura de c贸digo

M茅trica que indica el porcentaje de l铆neas de c贸digo ejecutadas por la suite de pruebas automatizadas.

50
New cards

TDD (Test-Driven Development)

Metodolog铆a donde se escribe primero la prueba (Rojo), luego el c贸digo para que pase (Verde) y finalmente se limpia el c贸digo (Refactorizar).

51
New cards

@InjectMocks

Anotaci贸n de Mockito que crea una instancia real de la clase a probar e inyecta en ella los objetos anotados con @Mock.

52
New cards

Docker

Plataforma de contenedores que empaqueta una aplicaci贸n con sus dependencias para asegurar que corra igual en cualquier m谩quina.

53
New cards

Kubernetes

Orquestador de c贸digo abierto para automatizar el despliegue, escalado y gesti贸n de aplicaciones en contenedores.

54
New cards

Pod

La unidad de ejecuci贸n m谩s peque帽a en Kubernetes que puede contener uno o m谩s contenedores compartiendo almacenamiento y red.

55
New cards

AKS (Azure Kubernetes Service)

Servicio administrado de Kubernetes en la nube de Microsoft Azure.

56
New cards

GitLab CI/CD

Herramienta que permite automatizar compilaci贸n, pruebas y despliegue mediante un archivo .gitlab-ci.yml.

57
New cards

SonarQube

Plataforma de an谩lisis est谩tico que inspecciona la calidad del c贸digo para detectar bugs, vulnerabilidades y deuda t茅cnica.

58
New cards

Fortify

Herramienta de seguridad para an谩lisis est谩tico y din谩mico (SAST/DAST) que busca vulnerabilidades cr铆ticas en el c贸digo.

59
New cards

Artifactory

Gestor de repositorios de artefactos binarios que almacena librer铆as (.jar) o im谩genes Docker de forma segura.

60
New cards

Azure Key Vault

Servicio en la nube de Azure para almacenar secretos (claves de API, contrase帽as) de forma segura.

61
New cards

INNER JOIN vs LEFT JOIN

INNER JOIN devuelve filas con coincidencias en ambas tablas; LEFT JOIN devuelve todas las de la izquierda y las coincidentes de la derecha o NULL.

62
New cards

脥ndice SQL

Estructura de datos que mejora la velocidad de b煤squeda a costa de espacio adicional y escrituras m谩s lentas.

63
New cards

Clave primaria

Campo que identifica de forma 煤nica e irrepetible a cada fila de una tabla y no permite valores nulos.

64
New cards

ACID

Propiedades de una transacci贸n: Atomicidad (Todo o nada), Consistencia, Isolation (Aislamiento) y Durabilidad.

65
New cards

Deadlock

Situaci贸n de bloqueo mutuo donde dos transacciones retienen recursos que la otra necesita, esperando infinitamente.

66
New cards

Execution Plan

Ruta detallada que el motor de la base de datos decide seguir para ejecutar una consulta SQL de la forma m谩s 贸ptima.

67
New cards

Feign Client

Cliente HTTP declarativo de Netflix integrado en Spring Cloud para llamar a APIs REST mediante interfaces Java.

68
New cards

Quarkus

Framework de Java optimizado para Kubernetes que destaca por bajo uso de memoria y arranque instant谩neo mediante compilaci贸n nativa (GraalVM).

69
New cards

Patr贸n Saga

Patr贸n arquitect贸nico que gestiona la consistencia de datos en microservicios mediante transacciones locales y acciones de compensaci贸n.

70
New cards

Orquestaci贸n vs Coreograf铆a

En orquestaci贸n un componente central dirige el proceso; en coreograf铆a cada microservicio reacciona aut贸nomamente a eventos (ej. Kafka).

71
New cards

Eventos de dominio

Acontecimientos del negocio que interesan registrar o reaccionar a ellos, como PedidoCreado o PagoRechazado.