> Mas pelo que to vendo, terei que esquecer meus conceitos de PHP e recomeçar > do zero!
É que o PHP mascara/mastiga algumas coisas pra supostamente facilitar a sua vida. Dar uma "zerada" conceitual é uma boa idéia. []'s 2011/10/20 Rafael Silveira <[email protected]>: > Obrigado Eden, pela resposta! > > E que de onde eu vim (PHP), as coisas são diferentes. > Então vou resumir minha pergunta! > > É possível usando HTTP::Server:Simple::CGI criar um esquema de routers > dinamicos? > Se nao, onde consigo fazer isso? > > Mas pelo que to vendo, terei que esquecer meus conceitos de PHP e recomeçar > do zero! > > []'s > > Em 20 de outubro de 2011 00:24, Eden Cardim <[email protected]> escreveu: >> >> >>>>> "Rafael" == Rafael Silveira <[email protected]> writes: >> >> Rafael> Galera, eis me aqui de novo! >> Rafael> Como estão! >> >> Rafael> Pode parecer um tanto estranho eu querer usar >> Rafael> HTTP::Server::Simple::CGI e Xslate; Criar um ambiente MVC do >> Rafael> zero; Quando se tem Catalyst ou Dancer. Porem é aquilo, eu >> Rafael> estou querendo aprender perl para web, e o melhor jeito de >> Rafael> se fazer isso (no meu ponto de vista), é criar um sistema >> Rafael> MVC utilizando essas libs. >> >> Rafael> Queria saber se é possível usar o modulo >> Rafael> HTTP::Server::Simple::CGI, para carregar classes >> Rafael> (controllers) de forma mvc. >> >> Não, esse módulo é uma implementação server-side de HTTP, mas você pode >> integrar ele com outros módulos que façam isso. >> >> Rafael> Por exemplo: >> >> Rafael> http://localhost:3000/Postagens/listagem >> >> Rafael> A url acima, faz um request para meu App usando >> Rafael> HTTP::Server::Simple::CGI que está escutando na porta 3000. >> Rafael> Ele le a uri (Postagens/listagem), parseia ela, e define que >> Rafael> Postagens é meu módulo (controller) e listagem é o método do >> Rafael> meu módulo. >> >> Só toma cuidado com esse tipo de coisa, que é bem fácil você abrir uma >> falha de segurança. A depender de como você implementou, sua app pode >> estar aberta à execução de subrotinas arbitrárias. >> >> Rafael> Resumindo, faço isso dinamicamente, sem definir rotas. >> >> Rafael> Caso passe só Postagens na uri, ele chama o metodo default >> Rafael> (index por exemplo). >> >> Rafael> Gostaria tbm de usar moose para estruturar meus módulos >> (controllers). >> >> Rafael> Mas não sei nem por onde começar. >> >> Rafael> Talvez uma estrutura tipo. >> >> Rafael> /root >> Rafael> /lib >> Rafael> /config >> Rafael> defaults.yml >> Rafael> database.yml >> Rafael> /controllers >> Rafael> Postagens.pm >> Rafael> /views >> Rafael> Default.tt >> Rafael> /models (nao to qrendo ver isso no momento) >> Rafael> app.pl >> >> Rafael> Sugestões? >> >> Recomendo você usar o padrão de módulos do cpan pra estrutura de >> arquivos da sua app. Assim qualquer desenvolvedor perl minimamente >> decente vai saber onde olhar dentro da árvore de source. É algo da >> forma: >> >> lib/ -- módulos >> t/ -- testes >> script/ -- executáveis >> Makefile.PL ou dist.ini ou Build.PL -- listagem/instalação de >> dependências >> MANIFEST -- listagem de todos os arquivos distribuíveis >> Changes -- log de mudanças entre releases >> README -- primeiro arquivo que alguém vai ler >> >> É bem recomendável que você use o Dist::Zilla porque ele facilita uma >> porção de coisas pra você na hora de estruturar isso. >> >> Rafael> Realmente eu gostaria de fazer dessa forma, para depois >> Rafael> aprender a usar um Catalyst, Dancer. >> >> Eu acho perda de tempo. Vai ser mais rápido você aprender a estruturar >> uma aplicação depois de você aprender a usar algo como o Catalyst e >> depois olhar pro source pra ver como é implementado. Digo Catalyst >> especificamente porque o Dancer é bem ruinzinho em termos da estrutura >> interna e qualidade do código em geral. Outro módulo que vale a pena uma >> olhada na doc e no source é o Plack. >> >> -- >> Eden Cardim >> Software Engineer >> http://bit.ly/edencardim >> http://twitter.com/#!/edenc >> +55 73 9986-3963 >> =begin disclaimer >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> SaoPaulo-pm mailing list: [email protected] >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> =end disclaimer > > > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > > =begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
