Tema 5: Java EE/Jakarta EE y Plataforma .NET
Ecosistema .NET
.NET
Plataforma de desarrollo de Microsoft para crear aplicaciones de escritorio, web y servicios.
- Common Language Infrastructure (CLI): Especificación que define la ejecución del código independiente del lenguaje.
- Common Language Runtime (CLR): Entorno de ejecución que gestiona la memoria, la seguridad y la ejecución del código .NET.
- Base Class Library (BCL): Conjunto de clases reutilizables para manejar archivos, colecciones, bases de datos y más.
ASP.NET
Framework para desarrollar aplicaciones web en .NET.
- ASP.NET MVC: Arquitectura Modelo-Vista-Controlador.
- ASP.NET Web Forms: Basado en formularios y controles de servidor.
Persistencia de datos en .NET
- Entity Framework (EF): ORM que permite interactuar con bases de datos sin escribir SQL.
- ADO.NET: Permite acceder y manipular datos mediante consultas SQL directas.
Multiplataforma
.NET Core (ahora parte de .NET 5+) permite ejecutar aplicaciones en Windows, Linux y macOS.
Ecosistema Java SE
JDK y JRE
El JDK incluye el compilador y herramientas para desarrollo en Java. El JRE solo permite ejecutar aplicaciones.
Conceptos importantes
- Threads: Permiten ejecución concurrente dentro de un programa.
- Concurrencia: Múltiples tareas se ejecutan al mismo tiempo.
- Sincronización: Previene conflictos entre hilos.
- Garbage Collector: Administra la memoria liberando objetos no utilizados.
Jakarta EE (Java EE)
Jakarta EE es un conjunto de especificaciones para el desarrollo de aplicaciones empresariales en Java.
- Jakarta Servlet: Manejo de solicitudes HTTP.
- Jakarta Faces (JSF): Framework para UI web.
- Jakarta RESTful Web Services (JAX-RS): Creación de APIs REST.
- Jakarta Persistence (JPA): Mapeo Objeto-Relacional.
- Jakarta CDI: Inyección de dependencias.
- Jakarta Transactions (JTA): Gestión de transacciones distribuidas.
- Jakarta Messaging (JMS): Comunicación asíncrona.
Herramientas y librerías