Académique Documents
Professionnel Documents
Culture Documents
lsquinones@utpl.edu.ec
01
Fundamentos
Un buen código es:
✔ Mantenible
✔ Escalable
Lógica de negocio
Detalles Técnicos
Puertos & Adaptadores, es una
arquitectura, que previene que Lógica de negocio
los detalles técnicos se infiltren
en la lógica de negocios.
Detalles Técnicos
Adaptadores
Implementan el
puerto. Uno por
cada sistema
externo.
Puertos
Interface
La LN “lo sabe y solo eso” Lógica de negocio
Adaptadores
Implementan el
puerto. Uno por
cada sistema
externo.
cómo ayudan los adaptadores
CoreLogic() {
TicTacToePort ticTacToePort;
think() {
if …
ticTacToePort.markCell(row, column);
}
}
interface TicTacToePort {
markCell(x, y);
...
Tres en raya }
p u e rto
import javax.swing.JTextField;
AdapterUI implement TicTacToePort {
CoreLogic() {
TicTacToePort ticTacToePort;
think() {
if …
ticTacToePort.markCell(x, y);
}
}
interface TicTacToePort {
markCell(row, column;
...
Tres en raya }
ad aptad or
import javax.swing.JTextField;
AdapterUI implement TicTacToePort {
CoreLogic() {
TicTacToePort ticTacToePort;
think() {
if …
ticTacToePort.markCell(x, y);
}
}
UML
BL Low Details
<<Interface>>
Juego Adivina mi número
vamos a analizarlo !
Saludo de cumpleaños
vamos a analizarlo !
El problema
• http://matteo.vaccari.name/blog/archives/154
• http://tpierrain.blogspot.com/2016/04/hexagonal-layers.html
• https://danielggarcia.wordpress.com/2014/02/28/patrones-estructurales-i-
patron-adapter-wrapper/
• https://engineering.laterooms.com/hexagonal-architecture-in-practice/
• http://wiki.c2.com/?HexagonalArchitecture
• http://wiki.c2.com/?PortsAndAdaptersArchitecture
• https://spin.atomicobject.com/2013/02/23/ports-adapters-software-
architecture/
• http://www.natpryce.com/articles/000772.html
Gracias
Q&A