Dúvida sobre desenvolvimento de um sistema (o que usar: EJB?)  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
pauloperes
JavaEvangelist
[Avatar]

Membro desde: 01/03/2005 11:45:20
Mensagens: 414
Offline

Ola a todos,

Preciso desenvolver um aplicativo onde o mesmo deve ter um sistema que acesse o banco de dados e visualize as informações via web, bem como ter vários clientes Desktops.

Estou pensando em criar uma aplicação JavaEE usando o EJB onde terei os meus serviços. Com relação aos clientes Destkop nao quero que os usuarios a cada atualização que eu faça nos sistemas tenha que baixar fazer o upgrade. Quero que eles acessem via página Web do sistema especifco e entao via web start a aplicação seja baixada e desta forma seja a ultima versão, a pergunga é: está é a forma correta de fazer?

Att,

Paulo

Paulo
[Email] [MSN]
aluisiodsv
JavaEvangelist
[Avatar]

Membro desde: 01/07/2010 17:28:24
Mensagens: 368
Offline

Cara, é muito melhor usar as especificações e desenvolver para web.
Ao invés de fazer uma aplicação desktop, desenvolva em web. Sempre terá a última versão.

A evolução do desenvolvimento de software trouxce esta maneira de desenvolver. Eu trabalho com isso e digo, é muito bom.
schranko
JavaTeenager
[Avatar]

Membro desde: 05/09/2010 17:58:40
Mensagens: 156
Localização: Moscow, Russia
Offline

Olá!

Porque você precisa de clients WEB e DESKTOP?

Com relação às outras camadas, fale mais sobre os requisitos de sua aplicação, assim podemos
selecionar o melhor conjunto de tecnologias para te ajudar!

[ ]'s

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." (Brian W. Kernighan)
[WWW]
pauloperes
JavaEvangelist
[Avatar]

Membro desde: 01/03/2005 11:45:20
Mensagens: 414
Offline

Ola,

Alguns aplicativos tem que ser desktop, isto porque o que é feito com eles, interação com equipamentos de rede para o desenvolvimento também é muito mas raṕido. Outro detalhe é que tenho que ter algums aplicativos que rodam através da cron e em máquinas separadas para nao prejudicar o processamento do servdor.

Por esses detalhes que estou pesando em usar o que falei na abertura do tópico.

Valeu,

Paulo

Paulo
[Email] [MSN]
Carlos_ds_jar
Virtual Machine Man
[Avatar]

Membro desde: 27/01/2007 15:38:24
Mensagens: 540
Localização: Ceará e Paraíba
Offline

Use o ejb e tome bastante cuidado com a implementação da interface desktop para não fazer um código que não seja portável e pode correr pra o abraço...

"O Java é capaz de gerar mais soluções e mais problemas do que a nossa 'vã' filosofia é capaz de prever!"
[Email] [MSN]
aluisiodsv
JavaEvangelist
[Avatar]

Membro desde: 01/07/2010 17:28:24
Mensagens: 368
Offline

Nenhum dos argumentos q vc usou explica fazer uma aplicação para desktop.
Uma aplicação web pode ser muuuito mais rápida q uma desktop.
E a questão do servidor, pode ser feito de muitas maneiras. Por exemplo: colocar seu banco de dados no servidor e a aplicação em um cloud.
Nunca uma aplicação desktop vai ser melhor q uma aplicação web.
luizSC
JavaBaby

Membro desde: 29/07/2010 19:10:45
Mensagens: 76
Offline

Paulo,

Há algum tempo iniciamos um projeto com requisitos parecidos com os que você apresentou. Também optamos por desenvolver algumas interfaces desktop e outras web. Não nos arrependemos.

Não dominávamos EJB. Então optamos por não utilizá-los inicialmente e fomos estudando paralelamente. Há aspectos muito úteis nessa tecnologia (clusters, balanceamento). Mas se você construir seu sistema com uma arquitetura bem resolvida, poderá adicionar EJBs posteriormente e manterá seu sistema independente deles.

Voltando à questão da interface. Além da web e desktop, é provável que você precise de outras interfaces (integração EDI, dispositivos móveis, sistemas legados, etc). Então, o que sugiro é que você crie seu sistema, separando completamente a interface da aplicação. No nosso caso, criamos um projeto para a aplicação e outros projetos para cada tipo de interface.

Abraços

pauloperes
JavaEvangelist
[Avatar]

Membro desde: 01/03/2005 11:45:20
Mensagens: 414
Offline

Obrigado a todos pelas repostas, vou optar por uar EJB mesmo.

Só aproveitando gostaria de ponderar sobre o que o nosso amigo aluisiodsv respondeu:


Nunca uma aplicação desktop vai ser melhor q uma aplicação web


A questão nao está relacionado a ser melhor, porém a atender o que eu preciso, veja, vou precisar de clientes que em nenhum momento sofrem intervenção humana, os mesmos são executados via cron, até pensei usar o EJB Time Service, porém como tenho hardware para distribuir minhas aplicações como clientes decidi por nao usar os timers. Nunca vi uma página html sofrer interações em que seja de um humano, certo?

Outra questão é ainda vamos depender por um tempo de aplicações que não sejam somente WEB.

Att,

Paulo


Paulo
[Email] [MSN]
aluisiodsv
JavaEvangelist
[Avatar]

Membro desde: 01/07/2010 17:28:24
Mensagens: 368
Offline

pauloperes wrote:
[1]... em nenhum momento sofrem intervenção humana ...
[2]Nunca vi uma página html sofrer interações em que seja de um humano, certo?
[3]Outra questão é ainda vamos depender por um tempo de aplicações que não sejam somente WEB.


[1]Não sofrem intervenção humana ? Então não é uma aplicação desktop, com janelas e tudo mais ?
[2]Não entendi ..
[3]Por quê ?

Realmente, o hardware vai interferir na decisão. Seu ambiente está propício à divisão dos processamentos, só q a evolução do software destacam esses problemas. Por isso tudo voltou a ser como era antes, onde o processamento é focado em um servidor.

This message was edited 1 time. Last update was at 13/09/2010 16:33:53

 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team