Que hacés, Fede?
Bueno, yo si hice la tarea, tomé la posta que dejaste y sin interés de entrar en discusiones si el título así, el marketing asá, voy a lo que propusiste: comentarios como usuarios de frameworks (y en mi caso, como constante desarrollador de los mismos):
Primero, lo obvio: la idea me parece muy buena y aunque no termino de estar en desacuerdo con Enrique, mis motivos no son tan dogmáticos, ni alineados con la libertad de la GPL, lo que a mi me mueve es la curiosidad y la bronca por no poder espiar en el código. Ya supongo que tendré tiempo.
Por otro lado, me parece muy bueno que hayas comenzado con la documentación, esto es en lo que fallan la gran mayoría de los proyectos, y creo que ya lo dije varias veces, incluso acá en el Foro.
Ahora, sobre el Framework: Sinceramente, te tendría que agarrar con tiempo y hacerte más preguntas, pero respecto a lo que leí en la documentación del sitio, tiene una estructura bastante similar al Zend, y me gustan en general los "atajos" que lográs para que no sea tan pesado comenzar a crear un sitio.
En general me cae bien la estructura de directorios que estableciste, aunque a veces pareciera que en el ejemplo tenés menos directorios que los que luego aclarás en la documentación, aunque en general, me gusta la idea de un módulo contenido con todos sus recursos, dentro de un directorio propio.
(idea: a mi personamente me gustan los Composite... ¿podría el directorio de un Módulo, emular el directorio de un sitio sin módulos? Como idea, sería que un módulo pueda ser parte de un sitio.... o un sitio aparte si asi se requiriera) Los componentes: Veo que estuviste haciendo investigación, me parece una buena idea utilices componentes disponibles y Open Source, mejores que los que se pueden llegar a encontrar en Zend (o al menos, más usables) para facilitar las tareas, de eso se trata... están los que quieren programar y aprender, y están los que quieren programar rápido y sacar trabajos rápido. Trex sería más para estos segundos.
La instalación y Configuración: A la primera vista, me parecieron muchos pasos, pero después pensé : ¿Esto no es lo que hago siempre? y la verdad es que si, hoy por hoy, para las aplicaciones que estamos manejando, siempre hay que dar todos esos pasos y no creo que se pueda hacer mucho para reducirlos. Me gusta, opciones dentro de archivos PHP, nada de .ini o .xml como sugiere Zend.
Los ejemplos de uso: Veo que hacés uso de una metodología ya establecida, de separar el sitio en módulos/acciones. Si bien este enfoque no está nada mal, te obliga a crear al menos 1 módulo, que sea el sitio web que estás desarrollando, lo cual puede afectar al largo de las urls. No es que no me guste, pero creo que se puede mejorar este aspecto, ya sea adoptando un módulo por defecto cuando no se especifique uno (no hacés mención de esto en la documentación), así mismo cuando se invoque un módulo que no existe: se indica la no-existencia o se toma como "acción" del módulo por defecto?
-- Fijate que tenés un error en
http://www.phpimpact.com/trex/docume...n-controllers/ , dónde dice "
Action Controller Class" debería decir News y no Name --
Lo que vi y que no me gustó para nada, es que en el ejemplo que pusiste, tenés un
public function index() que si mal no entiendo, es llamado ante cada request, determinando que acción es la que se quiere ejecutar? O sea que estás dejando dentro del Controller parte de la responsabilidad del Router? Leí más arriba (ya no recuerdo donde) que para vos era bueno que no tuviera una regla de enrutado predeterminada, pero puede llegar a ser muy engorroso determinar todas las reglas dentro de ese método, sobre todo dentro de un Switch que no es TAN rápido (generalmente, una regex es más rápida). Yo creo que hubiera dejado todo el enrutado dentro del objeto
Router, y si quiero funcionalidades distintas, de última heredo a Router y lo sub-claseo, y lo dejo en claro en algún archivo, o en el de bootstrap o en el de configuración del Módulo.
Bueno, por ahora y solo con lo que pude leer del sitio, es lo que te puedo decir. En realidad, me gustaría que Trex se convierta realmente en una opción para quienes quieren desarrollar rápido y si es 100% argentina, que mejor que mejor, el márketing te lo dejo a vos que siempre me diste clases de eso. Espero que estos comentarios sirvan al menos para comenzar algún debate un poco más profundo sobre el tema y que sea para el beneficio de los que lean y los que programen. Y ya sabés, si necesitás una mano con la arquitectura del framework o con la programación, ando con tiempo libre entre manual y manual de Zend que leo.
Un abrazo y espero tu respuesta (que si nobleza obliga, tiene que ser larga, no seas vago).
die();