entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

¿Como usar un helper en la arquitectura MVC?

Tengo la duda de como implementar un ayudante en MVC, sabía que servía para delegar funciones que no debería hacer la vista; como llenar campos, actualizar tablas, entre otrs cosas. Les agradezco de antemano su ayuda.

1 Respuesta

1voto

Leonardo-Tadei Puntos227320

Hola Pegnacorp,

los helpers son conceptos que introducen algunos frameworks, pero en realidad no son parte de la arquitectura MVC. Según esta arquitectura, todo está en alguna de estas 3 categorías Modelo, Vista o Controlador. Podés escribir código MVC sin usar nunca un helper.

Los helpers que he visto con mecanismos del Controlador que se usan para devolver cosas a la vista, que para respetar el paradigma siempre tienen que se conocimientos indirectos, es decir, la Vista nunca debe depender de cómo funciona el Controlador. Son usados por frameworks para automatizar la asignación de valores para devolver datos, pero esta necesidad depende de detalles de la implementación de la arquitectura.

Por ejemplo, si tu estrategia de validación de formularios es que los valide el Controlador antes de pasarlos al Modelo, y en caso de estar mal, que sea el Contralodar quién los devuelva, un helper de ese formulario podría ser de utilidad, pero no es imprescindible.

Si en cambio tu estrategia es que el Controladore reciba los datos del formulario y se los envíe directaemtne al Modelo, para que este lo valide según las reglas de negocio, el Modelo será el que cambiará su estado (diciendo "se hizo el alta" o "faltan datos para crear a eso Objeto" y la Vista leerá el Modelo para obtener su estado. En este caso un helper ni siquiera tiene sentido.

En resumen, los helpers son útiles si estás en la primer situación y si además pueden generalizarse de manera tal que "funcionen solos" o que ya estén soportados por el framework que vayas a usar, porque si vas a crear un helper para cada vista, harás un enorme esfuerzo para no ganar nada.

Espero haberte orientado un poco!

PD: en el ejemplo hablo de un Objeto, pero el MVC se puede implementar perfectamente en otros paradigmas de programación.

1voto

pegnacorp comentado

Muchas gracias, me quedó muy claro.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta