Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
|
code:dessignpatterns2 [2010/01/22 13:19] alfred creado |
code:dessignpatterns2 [2020/05/09 09:25] (actual) |
||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| ====== Patrones de diseño II ====== | ====== Patrones de diseño II ====== | ||
| + | ===== Patrones de arquitectura ===== | ||
| + | |||
| + | |||
| + | ==== MVC ==== | ||
| + | //Model-View-Controller// (o Modelo-Vista-Controlador) es ampliamente usado en el desarrollo de aplicaciones. Consiste en dividir el código de una aplicación en: | ||
| + | * El **modelo**, que corresponde a la gestión de los datos. | ||
| + | * La **vista**, que se encarga de mostrar, formatear, filtrar los datos. | ||
| + | * El **controlador** acepta los datos de la vista, realiza operaciones con estos y los pasa al modelo. | ||
| + | La esencia del MVC es esquivar el agujero que hay en la relación de la forma de pensar de las personas y la digital. Fue concevido para solucionar el problema de gestionar grandes desarrollos, siendo su proposito el de ayudar a los programadores a entender cómo funciona internamente un sistema mapeando el modo de pensar de las personas a un dominio de negocio. | ||
| + | |||
| + | ==== Active Record ==== | ||
| + | Es un patrón de arquitectura en el que se marca cómo guardar datos en una DB relacionales. \\ \\ | ||
| + | Un objeto debería incluir métodos como Insert, Update o Delete además de las propiedades que corresponden (más o menos) a las columnas en su tabla correspondiente. La tabla quedaría pues englobada en una clase y una fila de esta en una instancia de esta. Al crear un objeto se agrega una fila a la tabla y cualquier objeto cargado es recogido de la DB. \\ \\ | ||
| + | Aquí una implementación genérica para un elemento Part, que tiene nombre y precio: | ||
| + | <code> | ||
| + | part = new Part() | ||
| + | part.name = "Sample part" | ||
| + | part.price = 123.45 | ||
| + | part.save() | ||
| + | </code> | ||
| + | ===== Patrones concurrentes ===== | ||
| + | ==== Proactor ==== | ||
| + | ==== Reactor ==== | ||