¿Cuál es la mejor práctica para la colocación de funciones que se utilizan en múltiples capas MVC?¿Dónde deberían colocarse las funciones Symfony "globales"?
Recientemente tuve que escribir algunas funciones de estadísticas que se usan tanto en la Vista como en el Modelo. Si los pongo en un helper, estoy atascado cargando helpers en la capa del modelo, lo cual es molesto, parece incorrecto y se rompe por completo cuando se invocan esas funciones desde una tarea (porque no hay un contexto predeterminado). Si los coloco en el directorio de nivel superior lib
, estoy atascado haciendo llamadas como Stats::normalPercentile
en la vista.
¿Hay alguna otra opción? ¿Hay algún comentario de los desarrolladores de Symfony sobre dónde deben colocarse funciones como estas?
Editar: Aparentemente, no hay problemas para realizar llamadas estáticas en las vistas. Deduje esto basado en que Symfony no escribió sus ayudantes como clases (incluso después de significant discussion). En ese caso, ¿hay alguna convención para colocar archivos como estos? ¿Simplemente tíralos en lib/util
?
Estoy de acuerdo: no hay nada malo con las llamadas estáticas en las vistas Si al OP no le gusta, creará un ayudante que los enmascare. – Maerlyn
No estoy recopilando estadísticas en la vista, pero estoy haciendo cálculos como el percentil de un valor. Supongo que deduje (incorrectamente) que las llamadas estáticas estaban mal vistas en la vista porque Symfony no coloca sus ayudantes dentro de las clases. –