Академический Документы
Профессиональный Документы
Культура Документы
S.O.L.I.D
SOLID
SOLID
SOLID
Escribir cdigo que entienda la computadora es una
tcnica; escribir cdigo que entienda un ser humano es
un Arte --Robert Uncle Bob Martin
Single Responsibility
Open Closed
Liskov Substitution
Interface Segregation
Dependency Inversion
SOLID
Single Responsibility
SOLID
SOLID
SOLID
Open Closed
SOLID
SOLID
SOLID
Liskov Substitution
Las funciones que usan punteros o referencias a
clases base, deben ser capaces de usar objetos de
clases derivadas sin saberlo
SOLID
SOLID
SOLID
SOLID
SOLID
Los clientes no deberan estar forzados a
depender de interfaces que no utilizan.
SOLID
SOLID
SOLID
Negocio
Acceso a Datos
DB
Componentes
WS
Dependencia
UI
Conceptos MVC
Orientado a presentacin
AXIS
SEED- N aplicacin
Orientado a servicios
RSS
Transmisin de comprobantes electrnicos
Tipos MVC
SERVER-SIDE
Modelo, vista y controlador el ciclo de vida de estos
componentes es administrado por el servidor, la
mayora de framework lo implementan .NET JEE RUBY
DJANGO.
CLIENT-SIDE
Modelo, vista y controlador es administrado por el
cliente (Navegador), por lo general se implementa con
Javascript.
Servicios WEB
SOAP
REST
Componentes - Contenedores
Contenedores.
Componentes.
Componentes - Contenedores
Tecnologas JEE
JEE
Es
un
conjunto
de
especificaciones,
pila
tecnolgica,
que
nos
permite la construccin de
aplicaciones
empresariales.
Componente/Contenedor
Escalabilidad (Horizontal),
Portabilidad,
Seguridad
Aplicaciones Empresariales
App. Web Orientada Presentacin
Hibernate
EclipseLink
Capa
Visual
(JSF)
Capa
Servicios
(EJB)
Usuario
Capa
Datos
Usuario
J
P JDBC
A
TopLink
DML
Usuario
DML
Tecnologas
JPA
EJB
JSF
Tecnologas
Tecnologas
Controller
Display
Submit
page
Data and
transactions
Model
View
Reques
t data
Servidores JEE
Spring Framework
Spring Framework
Spring es un framework
alternativo al stack de
tecnologas estndar en
aplicaciones
JavaEE.
Spring Framework
Aportes
Las ms novedosas de Spring se centran en los siguientes campos:
Data/NoSQL
HTML5/mviles
Aplicaciones sociales
Cloud
Spring Framework
Sin IoC
Con IoC
Spring Framework
Principales proyectos
Spring Framework
Spring Boot
Spring Boot
Bondades
Simplifica la construccin de los proyectos en Spring
aplicando Convencin sobre configuracin.
Flexible y pre-configurado, ofrece servicios listos para
ejecutarse.
Permite usar la potencia de los mdulos de spring con
el minimo conocimiento.
Reduce el uso de XML, aplica el desarrollo con
anotaciones (Programacin declarativa).
Spring Boot
Objetivos
Disponer de funcionalidad out-of-the-box en funcin
de la naturaleza del proyecto (web, jpa, jms, nosql,
batch, etc).
Spring Boot
Spring Boot
Spring Boot
Spring Boot
Otras caractersticas
JMS, Integracin entre procesos no bloqueantes MOM
NoSQL, enfoque hacia la bigdata.
MongoDB
Redis
Cassandra
Monoltico y Microservicios
Microservicios
Microservicios
Estructura
Se comparte la vista
Desarrollo
componentes
de negocio de modo
independiente, pero se
despliegan
como
un
nico ente.
Acoplado y dependiente
de los objetos ORM
Microservicios
Consecuencias
Desarrollos y despliegues nicos.
Aplicaciones con alta complejidad y tamao.
Largos ciclos de desarrollo.
Compilaciones y despliegues eternos.
Difcil de escalar y nicamente escalado horizontal.
Microservicios
Es una tcnica de diseo de sistemas
como una coleccin de pequeos
servicios, cada uno ejecutndose en
su propio proceso, comunicndose con
protocolos ligeros como HTTP/Json.
Microservicios
Caractersticas
Poliglotas:
cada
micro
servicio
puede
ser
implementado en un lenguaje de programacin.
Tolerancia a fallos: Un fallo de un micro servicio no
afectar al resto.
Independientes: Ciclos de vida independientes
Escalado: Escalado eficiente y elstico.
Autonoma:
Cada
servicio
es
desarrollado
y
desplegado de forma independiente.
Facilita la colaboracin entre desarrolladores.
Microservicios
Estructura
Microservicios
Estructura
Almacenes de datos independientes
la
solucin
una
Microservicios
Un
cambio
requiere
que
toda la
aplicacin
se
despliegue
Un
cambio
solo requiere el
despliegue del
servicio
afectado
Microservicios
Microservicios
Acoplamiento
Difcil documentacin
Difcil sincronizacin
Interrupcin completa
Microservicios
Microservicios
Menos Acoplamiento
Comunicacin mediante APIs
HTTP
Pequeos e independientes
Microservicios
Comunicaciones
HTTP
Sin intermediario
Simple y natural
Peticiones y respuesta rpidas
Mensajes
Requiere un MOM
Aade complejidad
Las transacciones no son bloqueantes
Microservicios
Preguntas
Conozca ms
Agenda