Pessoal, Estou trabalhando no sistema da minha startup, e estou fazendo em Catalyst. Bom, como este é oficialmente a minha primeira experiência com sistemas mais complexos (até então só tenho experiência com pequenos e médios códigos de automação de sistema operacional) estão surgindo diversas dúvidas de arquitetura, no qual antes eu apenas tinha conhecimento teórico/acadêmico.
Muito lí sobre a recomendação de simplificar ao máximo o controller e colocar o máximo de inteligência no model, e quando possível ter código independente do Catalyst. Mas agora que estou tentando fazer isto surgiram dúvidas sobre como implementar corretamente (visando a manutenção do software, e não em performance necessariamente). Eu não tenho dúvida sobre as questões básicas de um CRUD. Lendo 'Catalyst Models Definitive Guide' (http://www.perlmonks.org/?node_id=915657), e com a ajuda do Gabiruh, compreendi que um caminho para isto é extender o resultset com métodos mais elaborados, como por exemplo, validação de dados (CPF, CEP), processo de troca de senha, etc. Estou com dúvida quando a inteligência não está diretamente relacionamento ao armazenamento de dados. Por exemplo, tenho que receber um arquivo de imagem, que deverá ser validada (se é uma imagem mesmo, etc), depois relacionar ao usuário e armazenar em um storage. Nesta situação eu tenho diversas tarefas, algumas que seriam natural colocar no controller, outras nem tanto. Qual a melhor maneira de lidar com isto ? Obrigado, Solli Honorio -- "o animal satisfeito dorme". - Guimarães Rosa
=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
