2008-12-18 17 views
7

Actualmente estoy usando bastante Unix + Mysql + Perl + Apache con algunos javascript para hacerlo más ajax. y he estado buscando en sitios que son web 2.0 y stackoverflow y realmente me gusta el diseño simple y el flujo sin problemas desde páginas y acción, etc.¿Vale la pena aprender en lugar de Catalyst + Mason + Template :: Toolkit en lugar de LAMP + Axkit?

Estoy tratando de decidir si aprender catalizadores, albañiles y similares son va a ser capaz de proporcionarme la capacidad de construir un sitio web web poderoso y fluido con menos esfuerzo y un código más fácil y limpio para mantenerlo más tarde.

a partir de ahora, realmente no me gusta el sitio web que construí, ya que es bastante viejo y lento. pero i've read from here que si quiero construir una carrera de él, entonces LAMP sería una mejor opción?

preguntándome en términos de estos tres criterios, ¿cuál sería mi mejor paso adelante?

  1. desarrollo de la carrera
  2. facilidad de construcción de sitios web 2.0 poderosa
  3. de qué manera es el catalizador en realidad mejor que la lámpara?

gracias. ~ Steve

+1

Catalyst Mason y Template :: Toolkit, todos pueden ser parte de LAMP, porque se ejecutan bajo Perl. –

+0

Bueno, para aclarar realmente estoy usando solo mod_perl y utilizando axkit para transformar los datos xml + xsl en html y me preguntaba si existe una forma más poderosa y eficiente de hacerlo. a partir de ahora, necesitaría manejar cada elemento por separado. – melaos

+0

s/pegado a LAMP/pegado a LAMP + axkit /; –

Respuesta

11

Las respuestas a sus preguntas ....

  1. "desarrollo profesional" - MVC es una buena práctica de programación por lo que la adquisición de conocimientos y la experiencia de que sin duda mejorar su potencial de carrera.

  2. "facilidad de construcción de gran alcance Web 2.0 sitio web" - Catalizador duda hará que este sea mucho más fácil porque ya hay personas que han estado allí y lo ha hecho (es decir, módulos en CPAN.).

  3. "¿de qué manera es Catalyst en realidad mejor que LAMP?" - Bueno, realmente son simplemente diferentes. Sin embargo Catalizador hace cumplir un paradigma de programación clara (MVC), que hace que las pruebas, refactorización, la producción de código reutilizable y mucho más mucho más fácil ... En mi humilde opinión ;-)

Espero que esto ayude.

PS. Catalyst es el padre de los frameworks web (MVC) en Perl y lo recomiendo encarecidamente. Sin embargo, echa un vistazo a las alternativas ... Suggest some Good MVC Framework in Perl.

PPS. Se puede encontrar una buena lista de marcos web (no solo los MVC) en Perl5 Wiki.

PPPS. Perl es y seguirá siendo una buena opción para el desarrollo web (2.0) (es decir, ignorar el FUD). Si por casualidad me equivoco, entonces aprender algo como Catalyst/MVC te proporcionará las habilidades necesarias que se pueden adaptar fácilmente en cualquier otro lugar.

+0

pero actualmente estamos usando mod_perl + apache + axkit, ¿intentaremos usar Catalyst? ¿Necesitará algún cambio fundamental importante o tengo que aprenderlo por mi cuenta? Gracias. – melaos

+0

AxKit es agradable ... Recuerdo haberlo usado hace un tiempo. Tal vez no necesitas moverte? (Sin embargo diciendo que parece recordar que AxKit 2.0 nunca aparece ... vergüenza). Catalyst/LAMP/otros frameworks no son servidores de aplicaciones XML, por lo que son "diferentes" y requerirán una cierta cantidad de trabajo. – draegtun

+0

re: arriba. Creo que Catalyst es probablemente tu mejor opción. Catalyst funciona con mod_perl y también es agnóstico cuando se trata de qué modelos y vistas usa, por lo que es posible que puedas integrarte con tu código actual (por ejemplo, vista XSP) al menos durante una transición. – draegtun

7

LAMP es Linux, Apache, Mysql y Perl. Eso es solo una pila. Si usa un marco web de Perl, todavía está usando Perl. Realmente no estás eligiendo entre LAMP y Catalyst o Mason.

+0

Bueno, el P puede ser PHP, Perl o Python :-) – mat

+0

El P puede ser, pero como se indica en el texto de la pregunta, está usando el Perl P. :) –

4

Catalyst parece ser un muy buen marco, especialmente cuando se combina con Template Toolkit. Si quieres aprender Catalyst, definitivamente leería el Catalyst tutorial.

Template Toolkit me parece que es un sistema de procesamiento de plantillas más capaz que Mason.

Personalmente, creo que vale la pena aprender Template Toolkit, incluso si no lo usa para la web.

Código copiado de Template-Toolkit.org

 
[% FOREACH person IN people %] 
[% IF loop.first %] 
<table> 
    <tr> 
    <th>Rank</th> 
    <th>Name</th> 
    <th>Email</th> 
    </tr> 
[% END %] 
    <tr> 
    <td>[% loop.count %]</td> 
    <td>[% person.name %]</td> 
    <td>[% person.email %]</td> 
    </tr> 
[% IF loop.last %] 
</table> 
[% END %] 
[% END %] 

Incluso puede incrustar Perl código directamente en sus plantillas. La opción EVAL_PERL debe estar habilitada para que se evalúe el código Perl.

 
[% TRY %] 
    [% PERL %] 
     die "nothing to live for\n"; 
    [% END %] 
[% CATCH %] 
    error: [% error.info %] 
[% END %] 
+0

Actualmente estamos usando axkit, así que con eso puedo incrustar variables en mi xsl y transformarlas dinámicamente, así que con xslt y xpath siento que puedo lograr lo mismo. Entonces, ¿hay una ventaja si aprendo la plantilla :: toolkit? – melaos

+0

Plantilla Toolkit ejemplo
http://stackoverflow.com/questions/383403/code-golf-print-the-entire-12-days-of-christmas-song-in-the-fewest-lines-of-code # 383544 –

+1

"El Toolkit de plantillas me parece ser un sistema de procesamiento de plantillas más capaz que Mason". ¿Eh? Mason le permite incrustar Perl en las plantillas, y le da toda la potencia de Perl. ¡TT es un mini lenguaje! Ahora, muchas personas _prefieren_ un mini-lenguaje, pero tiene cosas completamente al revés aquí. –

0

Estoy de acuerdo con Dave Rolsky: llamar a TT "más capaz" que Mason es una mala elección de palabras. A las personas a las que les gusta TT parece que les gusta porque se supone que es "más limpio". Al llegar a TT de Mason, TT se siente como una chaqueta recta bastante apretada. Hipotéticamente, es muy posible que "tengas todo el poder de perl" dentro de TT y dentro de Mason, pero el acceso a él está oculto, y de hecho si no estuviera enterrado, perdería su verdadero punto de venta: no lo haría. Parece más "limpio".

Yo mismo no estoy seguro de que yo diría que TT es "más limpio" (sería genial si las personas perl dejaran de internalizar la retórica de la campaña de desprestigio antipersonal y superaran este complejo de inferioridad) . Si la idea es que se supone que los web monkeys son mejores para atacar estructuras de control en TT que en Mason, sugeriría que eso no está establecido: esperaría que, en cualquier caso, necesitarían la ayuda de un programador real.

2

Sé que este hilo es bastante antiguo, pero voy a aportar un pensamiento. En mi humilde opinión, siempre vale la pena aprender algo nuevo, incluso si crees que no lo usarás profesionalmente. La exposición al nuevo código casi siempre conduce a una nueva visión. Las ideas pueden ser negativas: "¿Por qué lo hicieron de esa manera? ¿Eso no tiene sentido?". Pero creo que con más frecuencia obtendrá una nueva forma de ver las cosas o un nuevo enfoque para resolver un problema común.

Estas ideas ayudan a evitar que los programadores se vuelvan obsoletos. Tal vez esta es la razón por la cual muchas personas escriben sus propios lenguajes de programación o reinventan la rueda, y así sucesivamente.

Cuestiones relacionadas