CATALYST 
Web Framework 
Catalyst es el marco mas popular PERL MVC y facilita la 
creación de aplicaciones web divertido, gráficamente y rápida.
¿Que es el Framework? 
Es una estructura de soporte definida en la cual otro proyecto de 
software puede ser organizado y desarrollado. 
Se han convertido en la piedra angular de la moderna ingeniería del 
software 
Es una estructura software compuesta de componentes 
personalizables e intercambiables para el desarrollo de una 
aplicación.
¿Cual el objetivo de un 
framework? 
Desarrollo rápido y estructurado 
Reutilización de código 
Disminuir el esfuerzo en el desarrollo (Nos concentramos 
directamente en la solución del problema) 
Aprovechamos las funcionalidades ya implementadas. 
Tener como aliado a las metodología de desarrollo Ágiles(XP, 
Scrum, AD,...)
Patrón MVC 
• Modelo 
• Vista 
• Controlador
¿Que es Catalyst? 
• Es un framework para el desarrollo de aplicaciones web. 
• Es la respuesta de Perl para Ruby on Rails. 
• Permite el desarrollo de aplicaciones web de forma rápida.
Filosofía de Catalayst 
• Reutilización de código. 
• Desarrollar aplicaciones web de forma rápida, sencilla y divertida. 
• Utilizar los mejores componentes actualmente disponibles. 
• Combinar todo en un paquete fácil de usar.
¿Por que Catalyst? 
• Se basa en el patrón MVC. 
• Tiene todo lo necesario para desarrollar aplicaciones Web. 
• Soporta Ajax. 
• Posee buena documentación. 
• Es multiplataforma. 
• Posee una numerosa comunidad de desarrolladores y usuarios 
• Inspirado en Ruby on Rails (Padrino de la mayoría de los Frameworks)
Instalación de Catalyst 
1.- Tener instalado Perl y las librerías necesarias para Ctalyst. 
-Vamos a descargar Perl para Windows: http://dwimperl.com/windows.html
• Nos dirigimos a la terminal de Fedora y tecleamos para acceder a nuestro 
usuario.
1.- Haciendo uso de los repositorios de su distribución, tecleamos en nuestra 
terminal, con los repositorios queremos decir que debemos contar con sus 
respectivos archivos para efectuar nuestra instalación de no contar con ellos nos 
arrojara un mensaje “que no los encuentra”. 
Con el comando anterior estamos instalando tanto el Framework como algunos módulos 
extras para la conexión a bases de datos y generadores de vistas como Helpers.
2.- Haciendo uso de CPAN: debemos de verificar si Cpan se encuentra instalado y corriendo de la manera 
correcta, en este caso lo instale desde un archivo, ya que es menos complicado. Anexo link de descarga 
(http://rm-rf.es/como-instalar-modulos-de-perl-via-cpan/) 
• Comencemos entonces usar Catalyst: Tecleamos como estamos como super-usuario 
nos arroja un error, salimos y entramos desde la terminal tecleando el 
mismo comando, este proceso tarda alrededor de 10 o 15min.
• Tendremos como resultado lo siguiente: 
• created "evento" 
• created "evento/script" 
• created "evento/lib" 
• created "evento/root" 
• created "evento/root/static" 
• created "evento/root/static/images" 
• created "evento/t" 
• created "evento/lib/evento" 
• created "evento/lib/evento/Model" 
• created "evento/lib/evento/View" 
• created "evento/lib/evento/Controller" 
• created "evento/evento.conf" 
• created "evento/lib/evento.pm"
Nos cambiamos a la carpeta que nos acaba de crear que es el mismo nombre del proyecto que 
se creó en el catalyst. 
• # cd evento 
• Con el comando “tree” nos muestra un árbol de directorios y archivos que 
están dentro de la carpeta evento (si no tienes el comando “tree” basta con 
instalarlo con: “install tree”).
En este momento ya podremos ver nuestro servidor de Catalyst ejecutando, hacemos el 
siguiente comando: 
# scrip evento_server y no inicia automáticamente debes color –r.
En nuestro navegador colocamos la siguiente dirección: http://localhost: (Aqui el puerto 
correspondiente) y nos mostrará la página de bienvenida de Catalyst. Aquí nos crea un error debido a 
nuestro servidor, esto nos arroja en nuestra nueva pagina: Matched evento::Controller::registro in 
registro.
Esto, a parte de decirnos que vamos por buen camino, nos está diciendo lo que está 
programado en la controladora registro en el método índex: 
Creación de vistas. 
Para crear una vista es algo parecido a como hemos creado la controladora, vamos a usar 
TTSite como Helper, puesto que éste es mas flexible, aunque tiene algunas limitaciones. 
- # scrip evento(nombre de tu evento)_créate View participante TTSite 
No debemos descartar que todo se almacena en root/src . 
# mkdir root/src/participante 
# cd root/participante 
# vim participante.tt2
Dentro de archivo participante.tt2 escribimos lo siguiente: 
<p>Hola: [% nombre %] </p> (Lo puedes modificar según tu criterio.) 
sub saludo : Local { 
my ( $self, $c) = @_; 
$c->stash->{template} = “participante/participante.tt2“; 
$c->stash->{nombre} = “Joel Gómez“; 
}
Implementaciones 
CATALYST puede implementar en: 
Pruebas de usabilidad flexibles para aplicaciones móviles. 
Aplicaciones .NET con ODP.NET & Entity Framework. 
Arquitectura empresarial para la implementación de un BPM Center of 
Excellence. 
Estas son las mas sobresalientes, donde Catalyst se ubica en los primeros 
lugares.

Framework Catalyst

  • 1.
    CATALYST Web Framework Catalyst es el marco mas popular PERL MVC y facilita la creación de aplicaciones web divertido, gráficamente y rápida.
  • 2.
    ¿Que es elFramework? Es una estructura de soporte definida en la cual otro proyecto de software puede ser organizado y desarrollado. Se han convertido en la piedra angular de la moderna ingeniería del software Es una estructura software compuesta de componentes personalizables e intercambiables para el desarrollo de una aplicación.
  • 3.
    ¿Cual el objetivode un framework? Desarrollo rápido y estructurado Reutilización de código Disminuir el esfuerzo en el desarrollo (Nos concentramos directamente en la solución del problema) Aprovechamos las funcionalidades ya implementadas. Tener como aliado a las metodología de desarrollo Ágiles(XP, Scrum, AD,...)
  • 4.
    Patrón MVC •Modelo • Vista • Controlador
  • 5.
    ¿Que es Catalyst? • Es un framework para el desarrollo de aplicaciones web. • Es la respuesta de Perl para Ruby on Rails. • Permite el desarrollo de aplicaciones web de forma rápida.
  • 6.
    Filosofía de Catalayst • Reutilización de código. • Desarrollar aplicaciones web de forma rápida, sencilla y divertida. • Utilizar los mejores componentes actualmente disponibles. • Combinar todo en un paquete fácil de usar.
  • 7.
    ¿Por que Catalyst? • Se basa en el patrón MVC. • Tiene todo lo necesario para desarrollar aplicaciones Web. • Soporta Ajax. • Posee buena documentación. • Es multiplataforma. • Posee una numerosa comunidad de desarrolladores y usuarios • Inspirado en Ruby on Rails (Padrino de la mayoría de los Frameworks)
  • 8.
    Instalación de Catalyst 1.- Tener instalado Perl y las librerías necesarias para Ctalyst. -Vamos a descargar Perl para Windows: http://dwimperl.com/windows.html
  • 9.
    • Nos dirigimosa la terminal de Fedora y tecleamos para acceder a nuestro usuario.
  • 10.
    1.- Haciendo usode los repositorios de su distribución, tecleamos en nuestra terminal, con los repositorios queremos decir que debemos contar con sus respectivos archivos para efectuar nuestra instalación de no contar con ellos nos arrojara un mensaje “que no los encuentra”. Con el comando anterior estamos instalando tanto el Framework como algunos módulos extras para la conexión a bases de datos y generadores de vistas como Helpers.
  • 11.
    2.- Haciendo usode CPAN: debemos de verificar si Cpan se encuentra instalado y corriendo de la manera correcta, en este caso lo instale desde un archivo, ya que es menos complicado. Anexo link de descarga (http://rm-rf.es/como-instalar-modulos-de-perl-via-cpan/) • Comencemos entonces usar Catalyst: Tecleamos como estamos como super-usuario nos arroja un error, salimos y entramos desde la terminal tecleando el mismo comando, este proceso tarda alrededor de 10 o 15min.
  • 12.
    • Tendremos comoresultado lo siguiente: • created "evento" • created "evento/script" • created "evento/lib" • created "evento/root" • created "evento/root/static" • created "evento/root/static/images" • created "evento/t" • created "evento/lib/evento" • created "evento/lib/evento/Model" • created "evento/lib/evento/View" • created "evento/lib/evento/Controller" • created "evento/evento.conf" • created "evento/lib/evento.pm"
  • 13.
    Nos cambiamos ala carpeta que nos acaba de crear que es el mismo nombre del proyecto que se creó en el catalyst. • # cd evento • Con el comando “tree” nos muestra un árbol de directorios y archivos que están dentro de la carpeta evento (si no tienes el comando “tree” basta con instalarlo con: “install tree”).
  • 14.
    En este momentoya podremos ver nuestro servidor de Catalyst ejecutando, hacemos el siguiente comando: # scrip evento_server y no inicia automáticamente debes color –r.
  • 15.
    En nuestro navegadorcolocamos la siguiente dirección: http://localhost: (Aqui el puerto correspondiente) y nos mostrará la página de bienvenida de Catalyst. Aquí nos crea un error debido a nuestro servidor, esto nos arroja en nuestra nueva pagina: Matched evento::Controller::registro in registro.
  • 16.
    Esto, a partede decirnos que vamos por buen camino, nos está diciendo lo que está programado en la controladora registro en el método índex: Creación de vistas. Para crear una vista es algo parecido a como hemos creado la controladora, vamos a usar TTSite como Helper, puesto que éste es mas flexible, aunque tiene algunas limitaciones. - # scrip evento(nombre de tu evento)_créate View participante TTSite No debemos descartar que todo se almacena en root/src . # mkdir root/src/participante # cd root/participante # vim participante.tt2
  • 17.
    Dentro de archivoparticipante.tt2 escribimos lo siguiente: <p>Hola: [% nombre %] </p> (Lo puedes modificar según tu criterio.) sub saludo : Local { my ( $self, $c) = @_; $c->stash->{template} = “participante/participante.tt2“; $c->stash->{nombre} = “Joel Gómez“; }
  • 18.
    Implementaciones CATALYST puedeimplementar en: Pruebas de usabilidad flexibles para aplicaciones móviles. Aplicaciones .NET con ODP.NET & Entity Framework. Arquitectura empresarial para la implementación de un BPM Center of Excellence. Estas son las mas sobresalientes, donde Catalyst se ubica en los primeros lugares.