7-3-02 - Boletim ViaLinuxis em sintonia com o Fórum |
perl x php |
Primeiro as semelhanças: a grosso modo (depois eu explico melhor), ambas as linguagens perl e php rodam do lado do servidor e geram páginas html que irão para o cliente. Esta geração de páginas em geral está condicionada a dados que foram entrados via um formulário html.
Agora as diferenças: a página de resposta a um formulário já pode estar mais ou menos pronta. Dados como a cor de fundo, título, etc. já podem estar preparados. Imagine então que já exista uma página html que será a resposta a um formulário, mas com "buracos"; sendo que estes "buracos" dependem de algum processamento sobre os dados que vem do formulário. O processamento pode ser declarado dentro da página HTML em código php (como acontece com o asp). Este tipo de estrutura pode ser muito bom para certos tipos de pessoas; pois é razoavelmente fácil de aprender e se obtém resultados rápidos. Assim o código php roda apenas quando o apache percebe que está tratando uma página php e ele mesmo dispara um módulo para tratar desse código. O perl por sua vez é bem diferente. Em primeiro lugar, o perl é uma linguagem de script que roda de forma independente de outros softwares como o apache. Eu uso o perl para milhares de coisas independentemente de ser um script cgi ou não; coisa que você não poderia fazer se usasse o php (de novo: o php só roda quando o apache o dispara). O perl possui um tratamento espetacular de expressões regulares e strings. O perl possui uma ótima interface com o sistema operacional; e com serviços de internet que vão muito além que o php. Pense num problema: Eu estou gerando os boletins em formato html de forma personalizada. Na parte de baixo do email existe uma maneira simples de você se descadastrar desse boletim, e de fazer perguntas no fórum: tudo de forma personalizada. Pergunta: como você poderia fazer isso em php? Em resumo: eu recomendo o seguinte: você quer fazer um simples cgi que se comunica com banco de dados e só isso?! Use o php. Você quer dominar o seu Linux (serviços de internet, interface com o SO, etc.): use o perl.