Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Giihh

Programar em Java para rodar em desktop e web?

Recommended Posts

Boa tarde!


Qual linguagem devo aprender para criar um programa que possibilite um grande aproveitamento do código, onde meu cliente pode escolher adquirir a opção desktop ou web, e ambos terem as mesmas funcionalidades?


Java é a melhor linguagem no caso? Tenho pesquisado e o pessoal tá falando que o que deixa um programa pesado é a quantidade de consultas realizadas ao BD, como programar já otimizando? Tenho conhecimentos básico de HTML5, CSS, PHP, JavaScript, Bootstrap, JAVA e PMBOK.


Compartilhar este post


Link para o post
Compartilhar em outros sites

No teu caso tu estás limitado a uma linguagem que dê suporte a plataformas web e desktop. Java é uma opção apesar de não ser a única. Mas como tu disseste que já tem certa familiaridade com Java talvez seja tua melhor opção por enquanto.

 

Já desmitificando, não há como desenvolver uma única aplicação que rode na plataforma desktop e web. O que pode ser feito é modularizar ao máximo a sua aplicação. Separando bem código de negócio, de controle e de modelo. Uma vez tendo o projeto bem estruturado, pode-se criar aplicações web e desktop que utilizem os mesmos artefatos de negócio e de modelo.

 

Uma dica é criar um projeto java com todas as classes de domínio do sistema incluindo as configurações de mapeamento e acesso a dados. Depois poderia criar um outro projeto java com todas as classes de negócio. projeto seria responsável por manter a lógica de negócio. Entenda como negócio as regras das funcionalidades / casos de uso.

 

No que diz respeito a desempenho creio que haja um certo equívoco em afirma categoricamente que a culpa é do número de consultas ao BD. Na verdade o problema não é quantidade e sim qualidade. Às vezes uma única consulta leva o tempo de mais de 100 consultas. Isso tudo podendo ser evitado por uma query bem feita. Ou ainda com uma boa manutenção do banco: seja criando índices, removendo constraints desnecessárias, criando tabelas adequadamente etc.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Qual linguagem devo aprender para criar um programa que possibilite um grande aproveitamento do código, onde meu cliente pode escolher adquirir a opção desktop ou web, e ambos terem as mesmas funcionalidades?

Em Java você vai usar uma api para a construção de interfaces gráficas para usuário chamada swing para desenvolver software para PCs, programas aplicativos e tals.

 

Para desenvolvimento web a GUI será uma página Web, feita em HTML e cia.

Existem ainda opções como JSP e JSF, mas a moral da história, envolve o uso de tecnologias diferentes, você terá dois sistemas distintos quanto a GUI.

 

Concordo plenamente com o amigo q já respondeu aí, o controle e o modelo de seu sistema estes sim podem ser únicos, utilizados para ambas as versões do seu software.

Mas a visão vai variar e muito de acordo com a arquitetura e as tecnologias q vc escolher.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.