[firebase-br] Conselho em estruturas

Gladiston Santana gladiston em vidy.com.br
Sex Fev 13 16:24:12 -03 2015


Dividir um sistema em módulos é bacana por causa da manutibilidade ser mais
fácil, gerir permissões de usuários, atualizações modulares, manuais
separados e realizar treinamentos em equipes diferentes.
No caso de permissões, usando o exemplo do Firebird, voce poderia criar uma
role para cada modulo, a role PORTARIA teria todos os acessos que precisa
para realizar sua função, idem para a role VENDAS, etc... Quando um usuário
carregar um programa, o mesmo fará uso da role para aquele programa e tudo
dará certo. Se um usuario de vendas executar o programa da portaria, mas
não lhe foi concedido a role PORTARIA, daria erro de permissões. Por outro
lado, se um colaborador agregasse mais uma função bastaria associar a nova
role a ele.
Modularizar não significa jogar tudo em .exe separados, há muitas formas de
se fazer isso usando delphi, embora este seja o método mais simples.
Algo que me irrita nos sistemas dos outros é eles requererem permissões de
administradores para funcionarem, isso acontece porque enquanto escrevem o
codigo, não ligam a minima para ver se usuário comum consegue as operações
de leitura/escrita em registros/.ini que o programa faz naquela parte do
processo. AVs são irritantes com carregamento dinamicos de .bpl ou .dll,
por isso cuidado ao usar esses métodos para modularizar.

Quanto a dividir banco de dados, isso só faz sentido durante o
desenvolvimento ou quando o mesmo foi feito de qualquer jeito sem consultar
o departamento de "vai dar merd@". ;)

Em 12 de fevereiro de 2015 23:38, Jean Alysson <jeanpapa em gmail.com>
escreveu:

> Ola, desenvolvi um sistema pra parque aquático, com um banco firebird e um
> executável com todos os módulos: portaria, excursão, cartão consumo, ponto
> de venda, outros.
> Nesse caso, seria conveniente, para melhor organização e talvez desempenho,
> a divisão em vários executáveis e vários bancos dos módulos em comum ?
> O problema q vi, seria o cadastro de usuários em vários bancos, se precisar
> entrar em outros módulos, teria q cadastrar em todos.
> Alguém ja usou dessa forma em um sistema grande ?



Mais detalhes sobre a lista de discussão lista