[Cascavel-pm] ERP com Catalyst

Luciano Giordani Bassani lgbassani em terra.com.br
Terça Abril 22 12:15:51 PDT 2008


Eu não sei se minha opinião vale, pois não sou um programador Perl de 
verdade, mas mais um "colador de código".

Eu assisti a palestra de Catalyst e assisti a palestra de Ruby on Rails.
Eu estou iniciando um projeto de conversão de ERP, também, mas é de MS 
Access para PHP5.
Eu não queria produzir em PHP, eu gostaria de programar em bom Perl, mas 
infelizmente meu chefe não quer mais Perl em projetos deste gênero.

A sensação que eu tive é que estes frameworks são muito chatos e cheio 
de "declara aqui, declara ali". Não gostei.
Eles tiram a parte boa que eu gosto de fazer, que é planejar bem a base 
de dados e a estrutura do sistema.
Não gosto muito de ficar escrevendo e validando telas de cadastro, 
relatórios, etc.
Gostaria de algo que fizesse este trabalho "sujo" para mim.

Por isso, para este projeto ERP que estou começando a desenvolver, 
resolvi eu mesmo construir meu framework de uma forma que eu não precise 
ficar criando telas, pelo menos não as telas mais simples. Quando for 
uma tela mais complexa, não tem jeito. Faço manualmente mesmo, faz parte 
"sujar" um pouco as mãos.

O projeto está muito no inicio ainda, mas como bom "colador" de código, 
reuni vários pacotes de desenvolvimento, para desenvolver um esquema 
tipo um "kernel" do aplicativo e estou abusando de DHTML. Acho que o 
projeto está começando a entrar nos eixos e talvez esta seja uma dica 
para vocês.

Eu construi a aplicação de tal forma que na tela de grid, só preciso 
informar o nome da tabela e o SQL que é para ser usado no banco. O resto 
o próprio código faz. Na tela de cadastro, eu só informo o nome da 
tabela (volto a ressaltar, só serve para telas simples, telas complexas, 
com muitas tabelas tem que codificar "no braço") e o meu código pega os 
dados do banco de dados e monta o formulário baseado na definição SQL da 
tabela. Assim, o código já verifica o tipo de campo, tamanho, se é 
obrigatório, etc, tudo via SQL (estou usando o PostgreSQL).

Ainda está muito no início para ter certeza se isso vai dar certo, mas 
por enquanto estou conseguindo resolver as questões técnicas e já 
consigo as operações básicas em tabelas comuns a um ERP, como tabela de 
estado, pais, tipo-disso, tipo-daquilo.

No desenvolvimento, estou usando alguns pacotes DHTML prontos:
http://www.dhtmlgoodies.com/index.html?page=dhtml-suite
http://dhtmlx.com/docs/products/dhtmlxGrid/


SDS,

Luciano


OBS.: sobre a performance do CGI, eu uso isso em 2 projetos em Perl 
rodando em um servidor Linux, Com vários portais rodando no Apache, mais 
PostgreSQL e MySQL juntos, com uma visitação de cerca de 10mil 
visitantes únicos por dia, e nunca precisei usar FastCGI. A única coisa 
é que eu abuso da validação de dados com o Javascript.
Em contra-partida, este projeto que esta em fase de teste em PHP5, no 
mesmo servidor, tem se mostrado lento, mesmo sendo escrito com boas 
práticas e eu estar usando PDO, que em tese deveria ser rápido. Meu 
servidor é um DELL Xeon com 3,8GHz e 2GB de RAM (a RAM é muito 
importante para o servidor web não ficar lento com o SGDB).


Jorge Augusto Senger escreveu:
> Pessoal,
>
> A empresa onde trabalho utiliza um ERP, em Clipper, com cerca de 15
> anos de idade e a idéia aqui é modernizar a aplicação e implantá-la na
> web, em uma intranet.
>
> Quando comecei aqui, o novo ERP já estava sendo desenvolvido em Perl e
> CGI. Porém, como muitos membros da lista - o edenc principalmente - já
> enfatizaram, o CGI está obsoleto e eu não gostaria de reescrever uma
> aplicação velha usando uma tecnologia ultrapassada.
>
> Claro que a primeira coisa que me vem à cabeça é o Catalyst. Gostaria
> de aproveitar que o projeto ainda está no início para usar um
> framework MVC como o Catalyst, mas ainda não me sinto seguro para
> tomar esta decisão.
>
> Um dos aspectos positivos de utilizar Catalyst aqui e não outro
> framework é que grande parte da equipe domina Perl, o que tornaria o
> aprendizado do framework mais rápido.
>
> Gostaria de saber dos mais experientes se o Catalyst é uma boa escolha
> neste caso.
> As pessoas de minha equipe têm alguns receios e dúvidas a respeito do
> uso de um framework no lugar de CGIs:
>
> - Medo da aplicação se tornar engessada e dependente do framework;
> - Qual seria a diferença de performance da aplicação CGI x Catalyst?;
> - E se mais tarde o Catalyst sumir do mapa? O que vai acontecer com
> minha aplicação?;
>
> Para tentar esclarecer estas questões tenho lido algumas fontes na web
> e o livro do J. Rockway, mas considero a opinião de vocês muito
> importante também.
>
>   


Mais detalhes sobre a lista de discussão Cascavel-pm