[SP-pm] Design de Aplicações Web, como é feito?

Andre Carneiro andregarciacarneiro at gmail.com
Tue May 24 11:54:12 PDT 2011


Oi Teddy!


Tanto o Catalyst quanto o Mojolicious utilizam uma metodologia conhecida
como MVC(Model, View, Controller - http://pt.wikipedia.org/wiki/MVC ). Ler
isto pode iluminar um pouco as idéias mais tarde. Tentarei explicar sem me
preocupar muito com detalhes de MVC.

Respondendo mais diretamente a sua dúvida, a ligação entre o que se muda no
código e o que é mostrado na página ocorre através do processamento de
'templates'. Templates, no contexto de aplicações web, são basicamente
documentos HTML com 'marcadores especiais'. Esses marcadores são
substituídos posteriormente por HTML, após terem sido processados pelo
servidor. Para simplificar:

<div>Nome: [%nome%]</div>

Nesse exemplo, os marcadores que me referi são [%nome%]. Esse marcador pode
ser substituído por qualquer coisa que eu quiser. Obviamente nesse caso, eu
quero que seja substituído pela informação 'nome'. O importante é que você
entenda que tudo isso acontece do lado do servidor. O servidor está
preparado para ler a requisição de uma página qualquer do usuário, e chamar
corretamente o programa responsável por entender isso, recuperar a
informação que esteja numa base qualquer, ler o template, substituir todos
esses marcadores por dados, e/ou metadados e/ou quaisquer instruções que o
meu processador de templates suporte; para enfim cuspir HTML para o cliente.
É claro que existem outros tipos desses marcadores, porque os sistemas de
templates variam no seu funcionamento. Esse em especial é um exemplo de um
marcador típico do Template Toolkit - http://template-toolkit.org/


Depois da introdução tosca acima, eu posso dizer de forma bem simples que:
tanto o Catalyst quanto o Mojolicious fazem a mesma coisa, ou seja, esperam
a requisição chegar até eles, e fazem diversas coisas como interpretar e
transformar urls, separar os dados de entrada(formulários, campos e tudo que
estava no HTML no momento da requisição), depois processa esses dados de
entrada de várias formas(logins, redirecionamentos, alteração de dados e o
que mais você quiser), e depois envia os dados de saída para o sistema de
templates. Esse sistema de templates é que abre o arquivo de templates, e
substituí todos os marcadores por dados.



Não sei se consegui ser muito claro. Tentei ser o mais genérico possível.


Qualquer coisa pergunte!


Cheers!


2011/5/24 Teddy Hammer <teddyhammer at hotmail.com>

>  Então cara, desculpe minha falta de conhecimento, mas como isto eh feito?
> Por exemplo, supondo que vc queira fazer uma pagina onde o cara vai abrir o
> navegador e fazer seu cadastro por esta pagina.
> Supondo que nesta pagina tenha campos como Nome, Endereço, Cidade, etc.
> Como vc linka estes campos com seu código? E como vc define qual a ação
> serah executada qdo o cara clicar no botão CADASTRAR do formulário?
>
> Vc num ia ter que primeiro "desenhar" esta página com seus respectivos
> campos e depois ir fazendo a lógica do sistema?
>
> Tem isto pra Perl?
> Talvez pra deixar mais claro, existe tipo de editor como o Delphi ou
> JBuilder?
>
> ------------------------------
> From: darkstrikerd at gmail.com
> Date: Tue, 24 May 2011 13:34:49 -0300
> To: saopaulo-pm at mail.pm.org
> Subject: Re: [SP-pm] Design de Aplicações Web, como é feito?
>
>
> Olá Teddy,
>
> Eu particularmente faço toda a lógica do sistema, quando ele tá
> funcionando, eu aplico um css usando firebug, uma extensão do firefox que
> permite visualizar as alterações do css em tempo de execução.
>
> []z
>
> 2011/5/24 Teddy Hammer <teddyhammer at hotmail.com>
>
>  Ae galera!
> Vcs comentaram sobre Mojolicious e o CatalystFramework. Dei uma olhada por
> cima e não sei se entendi o que realmente eles fazem.
> O código deles é embutido dentro do HTML ou eles fazem o Designer da
> página, por exemplo, de um formulário de cadastro, como por exemplo o
> DreamWeaver faz?
> Se não for, como vcs fazem o desenvolvimento (tipo como faz um Web Design
> !) das páginas? Vcs usam qual ferramenta pra isso?
>
> Alguém pode me explicar como isto eh feito?
>
> =begin disclaimer
>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
>
>
> --
> Nilson Morais
>
>
>
> =begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/SaoPaulo-pm mailing list:
> SaoPaulo-pm at pm.org L =end disclaimer
>
> =begin disclaimer
>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>


-- 
André Garcia Carneiro
Analista/Desenvolvedor Perl
(11)82907780
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20110524/34f8aefd/attachment.html>


More information about the SaoPaulo-pm mailing list