Formulas no Banco de Dados

Boa tarde galera,

Nem sei se esse é o fórum apropriado para tirar minha duvida mais creio que sim.

Seguinte, estou desenvolvendo um sistema que faz uns cálculos para montagem de peças. Minha duvida é! guardar formulas em uma tabela no banco de dados é uma coisa legal? funcionaria legal?? e uma pratica utilizada?

vou explicar melhor o meu problema quem sabe alguma alma boa possa me ajudar hehe

eu tenho uma peça A que para calcular o perímetro é uma formula totalmente diferente da peça B. ou seja para cada peça eu terei uma formula diferente para calcular perímetro, peso e etc.

é uma boa pratica salvar no banco essas formulas

falow galera absss

galeraaa ninguemmm???

Nao entendi bem o que vc precisa.

Essas formulas serao usadas pela aplicacao? Ou serao apenas armazenadas para um usuario ver, “copiar” e aplicar a formula externamente?

Relendo eu entendi, hehehe. Curioso nao?

Guardar no banco vc diz, como stored procedures, ou em forma de texto pra que a aplicacao interprete e execute? No primeiro caso, acho pouco aconselhavel, principalmente pq os calculos nao devem ser simples, entao serao melhor executados na aplicacao.

No segundo caso nao vejo problema nenhum.

Dai amigo herbertins não entendi o pq guardar estas formulas no banco.

Pq não criar um método para cada formula diferente?

Ou melhor criar um metodo generico que tu só passa um parametro e através do parametro passado ele retorna o calculo da peça A ou da peça B.

Eu faria assim pelo menos.

Não vejo o pq guardar no banco tendo que criar varias transações ao meu ver sem necessidade.

Flw.

Eu pensei no problema mais ou menos como num sistema academico. Se cada professor puder lançar as avaliações independentemente, entao a media de cada turma será calculada de uma maneira. Só que quem define a formula é o usuário e não o desenvolvedor.
Acho interessante essa abordagem, mas de qualquer forma voce precisaria criar um interpretador para esses calculos depois ou ainda otimizar futuramente, num HashMap ou semelhante, uma forma de nao interpretar as formulas a cada calculo, melhorando a performance do sistema.

então eh exatamente o que o nicholas pensou, pq na verdade hoje o sistema contem mais de 100 peças diferentes que tem calculos diferentes para cada uma delas, e pode entrar novas peças.

eu encontrei uma api que interpreta uma formula em forma de txt.

será que vai ficar ruim?

abs a todos

Eu to fazendo um sistema academico que acabaria usando isso tambem. A minha ideia era usar uma API dessas de linguagem interpretada, tipo JRuby ou Groove para fazer as contas. Ainda não cheguei a esse ponto mas acho que é o que vale mais a pena.

MAIS COMO FUNCIONA ESSAS APIS??

cara to confuso de como fazer isso. Um amigo me disse que vai ser foda funciona sempre, pelo fato do usuário ter de cadastar as formulas no bancoo.

absss

Nao sei como funcionam as APIs por que, como disse, ainda nao cheguei nessa parte do sistema. Mas o principal é você criar uma forma de validar as formulas no sistema, ao menos a sintaxe delas. A pior coisa seria o usuario cadastrar uma formula que na hora da producao nao funciona e a equipe de TI levar a culpa.

Voce precisa deixar claro para ele como escrever a fórmula e quais os operadores disponiveis. Depois criar alguma função se ele precisar… Sei lá! Mas deixar na mao do usuario digitar a formula como bem entender e ter q se virar pra interpretar só vai te dar dor de cabeça.

Acho que o Design Pattern Interpreter pode ser usado numa boa pra fazer essa validação.

boa cara então vou seguir com a minha ideia, quem sabe dah certo hehee

valew abs.