Na opinião de vocês, o quão difícil é desenvolver uma calculadora no Java? - Java - GUJ
Na opinião de vocês, o quão difícil é desenvolver uma calculadora no Java?
wen.dell Abril 21, 2016, 4:06am #1
Estou tentando desenvolver uma calculadora com interface gráfica, porém estou tendo dificuldades. Queria saber de vocês, se for pra classificar num nível de 1 a 10, o quão difícil é desenvolver uma calculadora? A minha possui apenas as opções de somar, subtrair, multiplicar e dividir, além de contar com raiz quadrada e um botão para limpar. Estou tentando fazer um pouco parecida com a do Windows.
Mathob Abril 21, 2016, 4:32am #2
dificuldade 1, rs
Mathob Abril 21, 2016, 4:34am #3
Você está usando qual versão do java? E qual frameword de interface gráfica? Há alguma restrição?
wen.dell Abril 21, 2016, 5:22am #4
Oi, estou usando a última versão do Java. Eu to usando Swing mesmo. Não é tão fácil assim, você já fez uma? Se sim, queria umas dicas se puder dar.
Mathob Abril 21, 2016, 12:54pm #5
Você não tem experiência, por isso não é tão fácil. A sugestão que eu dou é, faca duas classes, uma CalculadoraController e outra CalculadoraView.
A view será responsável pelos elementos do swing. E o controller pela lógica das operações.
No controller você coloca como método as operações que sua calculador vai ter, por exemplo:
public Double somar(Double a, Double b) { return a + b; }
Na view, você cria os componentes do swing e uma instancia desse controller. Quando ele informar um valor e uma operaçao, voce guarda esses dois e solicita o segundo operando. Quando clicar em igual, voce verifica qual operaçao selecionou, valida os valores, chama o controller para executar a operação e seu retorno, exibe como resultado.
wen.dell Abril 21, 2016, 2:07pm #6
wen.dell Abril 21, 2016, 5:17pm #7
Eu estava fazendo tudo dentro da mesma classe rsrs. Vou tentar fazer com duas classes, porém não vai ser bem como você disse. No final se der certo eu posto o resultado aqui.
Mathob Abril 21, 2016, 5:19pm #8
Tudo na mesma classe funciona? Sim, porém não é o correto. Supomos que você não quer mais usar swing, que você quer usar outra API de interface gráfica. Você teria que sair vasculhando o código dessa classe para saber o que é interface e o que é lógica, para poder alterar apenas os trechos da tela. No caso dessa calculadora, não é muito complexo. Mas a medida que a lógica se complica, trabalhar em uma classe "dona de tudo" se torna difícil.