Want to make creations as awesome as this one?

Transcript

Por Héctor Ulises Stamatio Ferraez

Aplicaciones Web Orientadas a Servicios

EMPEZAR

Presentación General

Introducción a la materia

Mi nombre es Héctor Ulises Stamatio Ferraez. Soy Ingeniero en Desarrollo y Gestión de Software.

Presentación del docente.

El alumno desarrollará Aplicaciones Web Híbridas Orientadas a Servicios mediante la integración de lenguajes de programación, Frameworks de desarrollo y API's.

Objetivo General de la Materia

Arquitectura orientada a servicios (SOA).

Paradigma del desarrollo de aplicaciones orientadas a servicios.

Introducción a la materia.

Introducción al desarrollo Web orientado a servicios

Unidad 1

Manejo y configuración de JWT.

Persistencia y mapeo de bases de datos.

Consumo y manejo de APIs.

Entornos y conceptos para el desarrollo de APIs.

Seguridad y protección de endpoints.

Interfaz de Programación de Aplicaciones (API)

Unidad 2

Consumo de APIs.

Funciones sincronas y asincronas.

Manejo de bases de datos con NodeJS.

Metodología Trunk Based.

Conclusiones, integración de temas y evaluación.

Integración de una aplicación orientada a servicios de tipo Mashup.

Unidad 3

¿Nombre Completo?¿Como prefieres que te llamen?¿Trabajas?¿Del 1 al 10 que tanto consideras que sabes programar?¿Qué tal te fue en 3er cuatri?¿Qué es lo que esperas de esta materia?

Háblame sobre ti.

Presentación de los Estudiantes

Programar una app que consuma un Servicio/API desarrollada por los estudiantes, el cual puede estar codificado con Spring Boot o Node.js donde dicho servicio deberá consumir una base de datos.

El proyecto final a desarrollar

Tarea Integradora

Unidad 1

Criterios a Evaluar

Unidad 2 y Unidad 3

Criterios a Evaluar

  • Respeto
    • Groserías / Apodos
    • Atención ***
    • 5 Sentidos
    • Puntualidad
  • Tolerancia
    • 10 minutos después retardo
    • 20 minutos después falta
    • Entrar / Salir del salón en silencio
  • Alimentos
    • Sin alimentos y sin bebidas
  • Equipos electrónicos
    • En silencio
    • Reglas del laboratorio

Reglamento

  • En las clases generalmente habrá una actividad, pregunta o quiz ya sea individual o en equipo que te puede dar N número de participaciones.
  • Para el caso de la ruleta de preguntas en caso de que alguien no la pueda contestar otra persona puede contestarla y robar esa participación.
  • En caso de incumplir algún punto del reglamento del maestro o del área de computo podrás perder N número de participaciones dependiendo del a gravedad.

Consideraciones importantes.

Participaciones

Estos precios son solo un ejemplo ya que dependerá del tamaño de la unidad.

Participaciones como divisa

$15

Exento de examen(Solo aplicable para Unidades con examen)

$10

Un Punto

Falta justificada

Una décima

$5

$2

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

16

15

14

13

12

11

10

Horario 4°A

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

16

15

14

13

12

11

10

Horario 4°B

Es momento de preguntar.

¿Dudas?

Examen Diagnóstico

Introducción al desarrollo Web orientado a servicios

Unidad 1

Suena parecido al concepto de Framework. ¿Cuál sería la diferencia entre API y Framework?

¿Qué es una API?

Conjunto de funciones y procedimientos que permite integrar sistemas, permitiendo que sus funcionalidades puedan ser reutilizadas por otras aplicaciones o software.

+ Respuesta

¿Qué son las aplicaciones orientadas a servicios?

Son aplicaciones diseñadas para interactuar con otros servicios, tanto internos como externos, a través de interfaces definidas (APIs). Estos facilitan la integración y la interoperabilidad entre diferentes sistemas y tecnologías

Escalabilidad

Reusabilidad

Interoperabilidad

Desacoplamiento

Se pueden agregar, modificar o eliminar servicios de manera sencilla.

Los servicios pueden ser reutilizados en diferentes aplicaciones

Puede interactuar con otros sistemas, sin importar la tecnología.

Cada servicio es independiente de otro.

Puntos clave de las aplicaciones orientadas a servicios

Principales Características

Un paradigma es un enfoque o modelo de cómo se deben desarrollar e implementar las aplicaciones.

Event-Driven

Microservicios

SOA

Principales Paradigmas del Desarrollo de Aplicaciones Orientadas a Servicios

Hora de formar equipos de integradora

El estudiante investigará los estándares de servicios web (XML, SOAP, WSDL, UDDI, REST).

Actividad

Los estándares más comunes

Estándares de Servicios Web

WSDL

Web Services Description Language

REST

Representational State Transfer

SOAP

Simple Object Access Protocol

UDDI

Universal Description, Discovery, and Integration

XML

Extensible Markup Language

  • Los estándares permiten la comunicación e integración entre diferentes servicios y aplicaciones.
  • Facilitan la creación de arquitecturas modulares y escalables, donde cada componente puede ser desarrollado, mantenido y actualizado de manera independiente.

Función y Uso en SOA

REST:Estructura: Basado en HTTP, utiliza métodos estándar como GET, POST, PUT, DELETE.Flexibilidad: Permite usar diferentes formatos de datos (JSON, XML, etc.).Escalabilidad: Fácil de escalar y más ligero, menos sobrecarga de red comparado con SOAP.Ejemplo de Uso: Aplicaciones web y móviles, servicios de redes sociales, APIs públicas.

SOAP:Estructura: Mensajes basados en XML, protocolo más complejo y robusto.Seguridad: Proporciona características avanzadas.Transacciones: Adecuado para operaciones empresariales críticas.Ejemplo de Uso: Servicios de banca, aplicaciones empresariales que requieren alto nivel de seguridad y transacciones complejas.

SOAP vs REST

Más complejo y dependiente de XML.

Transacciones complejas.

Soporte de seguridad

Estándar bien definido

Requiere mayor ancho de banda

Ventajas y Desventajas

SOAP

No estandariza seguridad.

Flexible en cuanto a formatos de datos.

Fácil de implementar y escalar.

Simple y ligero.

Es menos fiable que SOAP.

Ventajas y Desventajas

REST

El estudiante hará un cuadro comparativo acerca de REST y SOAP.

Actividad

¿Arquitectura Orientada a Servicios (SOA)?

Modelo de diseño de software donde los componentes se encapsulan como servicios independientes que se comunican entre sí.Enfocado en la entrega de funcionalidades específicas como servicios que pueden ser utilizados por diferentes clientes o aplicaciones.

  • Capa de Consumidores: Incluye interfaces de usuario y aplicaciones que consumen los servicios.
  • Capa de Procesos de Negocio: Orquesta los servicios para completar procesos de negocio complejos.
  • Capa de Servicios: Contiene los servicios reales que realizan tareas específicas y están disponibles para ser consumidos.
  • Capa de Recursos: Incluye bases de datos, sistemas legados, y otros recursos necesarios para proporcionar los servicios.

Una visión general.

Cuatro Capas de SOA:

Reusabilidad

Escalabilidad

Flexibilidad

Las principales ventajas siempre que hablamos de servicios son las mismas.

La Trifuerza de las ventajas

05

Diagramas de Aplicaciones Orientadas a Servicios

Importancia de los Diagramas:

  • Proporcionan una visualización clara de la arquitectura de la aplicación.
  • Facilitan la comunicación y comprensión entre los equipos de desarrollo, administración y stakeholders.

Tipos de Diagramas Relevantes

Diagrama de Secuencia

Diagrama de Actividades

Tipos de Diagramas Relevantes

Diagrama de Arquitectura

El estudiante hará una guía de estudio sobre todo lo explicado en la Unidad.

Actividad

¡Muchas Gracias!

Es una estructura completa para desarrollar aplicaciones, ofreciendo una base consistente y componentes predefinidos que ayudan a los desarrolladores a construir aplicaciones de manera más rápida y con menos errores.

Es un contrato o interfaz que permite la comunicación entre diferentes sistemas o partes de un sistema. Es un medio para acceder a funciones o datos específicos.

Framework:

API:

API vs Framework

Ambos son fundamentales en el desarrollo de software moderno, pero sirven a propósitos diferentes y se utilizan en distintos contextos.

Event-Driven Architecture

Arquitectura Impulsada por Eventos
  • Basado en la captura y procesamiento de eventos del sistema o del negocio.
  • Servicios reaccionan a eventos en lugar de solicitudes directas.
  • Ventajas: Mayor adaptabilidad a los cambios, mejor manejo de operaciones asincrónicas.

SOA

Arquitectura Orientada a Servicios
  • Enfocado en la organización de aplicaciones en términos de servicios bien definidos que se comunican a través de un protocolo de red.
  • Ventajas: Flexibilidad, escalabilidad, facilidad para integrar nuevos servicios.
  • Uso común en empresas que requieren integrar múltiples sistemas y aplicaciones.

Microservicios

  • Subdivisión de SOA en servicios aún más pequeños e independientes que realizan funciones específicas.
  • Cada microservicio se despliega de manera autónoma, facilitando actualizaciones y escalabilidad.
  • Uso típico en aplicaciones modernas que requieren un rápido desarrollo y despliegue continuo.