¿Codeigniter-Reactor + esteroides? - Userlinux.net

Es algo que todavía no llego a entender ni asimilar. He pasado la mayor parte de la tarde para configurar la nueva versión 2.0 de CodeIgniter-Reactor con varias librerías que, para mi forma de desarrollar, son indispensables en cualquier framework de programación orientado a web: HMVC: Gracias a la librería…

¿Codeigniter-Reactor + esteroides?

04.Feb.2011 ~ 21 Comentarios ~ 1861 Lecturas

Es algo que todavía no llego a entender ni asimilar. He pasado la mayor parte de la tarde para configurar la nueva versión 2.0 de CodeIgniter-Reactor con varias librerías que, para mi forma de desarrollar, son indispensables en cualquier framework de programación orientado a web:

  • HMVC: Gracias a la librería de Wiredesignz podemos ordenar nuestro código en módulos y simplificar la lógica de la aplicación.
  • ModulesModule: Ahora que todo será un módulo, no vendría mal un módulo encargado de ejecutar las tareas más comunes de los módulos (instalar, desinstalar, actualizar...). Un módulo de módulos.
  • SettingsModule: No me gusta cargar la configuración desde ficheros config/*, por comodidad y para que el usuario pueda cambiar cualquier parámetro ajustable de una aplicación, prefiero hacerlo en base de datos y cachearlo a disco si es necesario. Me quedo con la librería de PyroCMS.
  • ThemesModule: Otra característica imprescindible sería tener una aplicación themeable y que desde un interfaz de administración se pueda cambiar tranquilamente el aspecto de la misma. Para ello podemos hacer uso de este módulo capaz de instalar y desinstalar themes.
  • TemplateLibrary y TagsLibrary: Una vez hemos decidido hacer la aplicación modular y themeable siguiendo el patrón MVC, un buen lenguaje de template para que los diseñadores no se vuelvan locos con el lenguaje dinámico sería un punto más.
  • MigrationsLibrary: Una vez lo pruebas se convierte en musthave. Se trata de una librería para hacer migraciones de versiones en base de datos. Gestiona los cambios entre versiones de forma sencilla.



Como podéis ver siguiendo los enlaces, casi todo lo necesario para montar el esquema inicial de un framework PHP decente está en los repositorios de Phil Sturgeon (bitbucket y github). Su PyroCMS cuenta con todas estas características pero tiene muchas otras librerías que no son necesarias -a mi modo de ver- para tomarlo como base para cualquier otro tipo de proyecto.

Demasiado complejo de ensamblar, una vez he conseguido hacerlo funcionar más o menos todo ya no tengo ganas de empezar a programar la aplicación que tenía en mente. ¿Por qué no hay *nada* con todas esas funciones  de serie en PHP?. Si, ya sé que con Ruby on Rails o Django hubiera tenido todas estas características -y más- en un par de comandos, pero tenía que desengañarme.

En este sentido PHP sigue estando tan verde como hace años, me hace perder demasiado tiempo aún conociendo la estructura del lenguaje. Todos sabemos como es la curva de aprendizaje al principio, pero -aunque duela- ha llegado el momento de invertir en otra cosa. Shame on me?

Comentarios


gravatar
04.Feb.2011
La verdad es que no he llegado a profundizar en ningún framework en PHP, pero desde luego me parece un poco marear la perdiz todo lo que has tenido que montar.

De hecho es una de las pegas de algunos frameworks muy serios en Perl (como Catalyst), que ha propiciado en surgimiento de propuestas muy potentes y sin tanta dependencia (como http://perldancer.org/ o, más al extremo, http://www.mojolicious.org/).

Imagino que si dominas el lenguaje, que en el caso de PHP es más bien el API y las particularidades "raras" que han ido añadiendo desde PHP 5.2 en adelante, te puede compensar meterte en un embolao como el que describes. Pero también es verdad que hay gustos para todo -- ¿lleva ya servidor de desarrollo "de casa"? ;)

gravatar
04.Feb.2011
No pretendo -ni sabría- borrar de mi mente todo lo aprendido en PHP, pero a la hora de ponerme con otros lenguajes (Python/Django) me juega demasiadas malas pasadas. Pienso demasiado "a lo PHP" y eso no es bueno.

Eso me hace pensar en la dificultad de adaptación a otros entornos y a veces me hace retroceder un par de pasos. Espero que me sirvan para tomar carrerilla, porque la decisión -visto lo de hoy- ya está tomada, me apetece demasiado montar en pony :P.

gravatar
marceloabelda
09.Mar.2011
Hola.
Me podrías comentar, superficialmente, como hiciste andar ModulesModule.
está la librería module
el modules/module
pero no comprendo muy bien como funciona.
Gracias.

gravatar
25.Apr.2011
Has visto http://getsparks.org ?
Aún está medio en pañales pero a lo mejor se trata de la idea que andabas buscando. ;) Vamos a ver cómo evoluciona. Saludos

gravatar
25.Apr.2011
@marceloabelda: Es un módulo que se encarga de instalar/desinstalar módulos, tan simple como cambiar el status de un xml de 0 a 1 y dependiendo de lo que estás haciendo (instalar o desinstalar) ejecutar las queries correspondientes almacenadas en un install.sql o en un uninstall.sql. Nada del otro mundo, la verdad.

@julian: Si, lo sigo bastante de cerca, es una especie de "oil" (fuelphp) pero todavía le faltan "sparks". Habrá que seguirlo de cerca. Gracias por el apunte.

Comentarios


Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 15 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

Buscar

Cargando...

Últimos comentarios

  • graffic
  • reidrac
  • reidrac
  • Wu
  • dilam
  • r0sk
  • reidrac
  • r0sk
  • chucu
  • r0sk
  • el_palomo_programador
  • r0sk
  • reidrac
  • Player 1
  • r0sk

Moneting

Valor de mi cuenta de Facebook según Moneting
Valor de mi cuenta de Twitter según Moneting

Tagcloud

bsd humor bake twitter vacaciones ps3 hack 2007 python blog django alemania_2006 mundial cake felicidades games conciertos rsidenotes juegos openbsd web iphone sidenotes rfilms ubuntu barça cakephp blogsfera mac bash meme macosx deportes canción ds personal films freebsd 2008 opinion nintendo sysadmin futbol mysql php frases userlinux debian ssh linux blogs champions apple lugo league programación twitt lucux seguridad cumpleaños

Archivo

Social

Enlaces de interés