• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

magician

Java e swing

39 mensagens neste tópico

Boas pessoal á algum tempo que ando de volta do swing do java, quero fazer interfaces graficos para as minhas aplicações e swing parece-me o vais viavel e simples.

Mas o prob é que nao consigo encontrar material sobre o assunto tenho muitos books mas em ing :( e ta complicado aprender aquilo e ainda ententer o ing lol :)

E o material que encontrei é muito superficial, alguem me pode ajudar ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Antes de + nada precisas do jdk, vais ao site da SUN e instala-lo no teu PC.

Depois instalas um ambiante de desenvolvimento, aconselho-te o Netbeans. Podes descarregá-lo do site do netbeans.

E depois é só ganhares prática, mas nada cai do céu tens de +perder algum tempo.

Boa sorte...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

hummm eu ja programa em java a 1 ano a nivel academico por isso essas coisa eu sei LOL :(

Só queria mesmo para swing e awt.event que isso é que  nao tou a apanhar muito bem :S

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muitas gracias :( nao tem tudo o que queria mas serve muito bem :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
swing parece-me o vais viavel e simples

Espero que entendas que swing tem muito de herança/polimorfismo e um padrão aplicacional subjacente chamado Model-View-Controller. Seja como for se não percebes muito de inglês vais ter alguns problemas, tenho alguns pdfs muito bons sobre isso mas só em inglês :(

Se tiveres dúvidas não hesites, coloca aqui quem o ppl ajuda.

Peace.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se o inglês é 1 problema para vçs... sugiro VIVAMENTE a corrigir isso... pk se vçs começam a trabalhar, e não me sabem ler as coisas técnicas em inglês... bem... boa sorte.. :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se queres fazer interfaces em Java aconselho-te a usares o SWT, o Swing é muito pesado e, pessoalmente, acho que não acrestenta nenhuma real mais valia para quem o usa.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Cá venho eu defender o swing mais uma vez :P

Swing é pesado é verdade mas tem razões para ser pesado, obriga a boas práticas de programação, traz facilidade de personalização, e o modelo MVC é a melhor invenção depois da roda para aplicações :).

SWT e Swing possuem duas filosofias diferentes, o Swing é independente da plataforma, possibilita o uso de look-and-feels que podem ser instalados por acção do utilizador, tira toda a complexidade de desenvolver interfaces das mãos do programador, sim o Swing é mais complexo mas essa complexidade fica com o sistema, o programador não tem que se preocupar com isso, tem apenas de seguir as apis e as regras do Swing, além de possuir um conjunto de componentes superior ao do SWT e de permitir o uso de Jbeans mutio facilmente. O SWT é agarrado à plataforma, precisa dela para ser rápido, muito mais rápido que o Swing, e para tornar as aplicações mais parecidas com o sistema operativo onde correm, tem alguns pormenores, como os destrutores, que promovem o aparecimento de erros muitas vezes dificeis de detectar.

Enfim são dois sistemas diferentes, pessoalmente, sempre que tento agarrar no SWT sinto-me preso, o Swing traz um hierarquia de classes que me facilita muito. Para programadores com pouca experiência, não digo apenas em Java/Swing/SWT, digo em programação com threads, problemas de concorrência, problemas de gestão de memória então penso que o Swing ajuda mais. Para usar SWT é necessário conhecer bem esses problemas pois são problemas que o próprio sistema SWT provoca.

Mas isto é mais uma luta em torno do SWT/Swing, haverá sempre quem defenda os dois sistemas. Um concelho, tenta os dois, quando te sentires mais confortável com os dois sistemas escolhe um, acho que é o melhor, podes gostar mais da liberdade que o SWT te dá a nível de controlo do sistema ou do grande poder que o Swing te oferece, e se conhecers os dois sistemas melhor podes sempre comparar as vantages/desvantagens que te dão e depois escolher.

Peace.

Nota: Agora que releio o post, no fim de o submeter :), reparo que talvez tenha sido parcial e tenha apontado mais algumas falhas do SWT do que propriamente as suas virtudes... Penso que neste caso não poderei ajudar muito, estou muito agarrado ao Swing... no entanto uso o Eclipse que é feito em SWT, talvez por isso veja mais falhas na abordagem SWT do que propriamente virtudes... Seja como for acho que neste caso tens de experimentar para escolher.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já tinha indica este artigo antes mas acho que pode ser relevante e por isso volto a coloca-lo aqui.

http://www.developer.com/java/other/article.php/10936_2179061_2

Posso traduzir se não perceberes alguma coisa, cá estou eu a puxar a brasa à minha sardinha outra vez :). Seja como for aqui fica, já agora o link é para a página de conclusão, nada parcial  :eek:,  :P,  :biggrin:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não é preciso traduzir LOL, eu percebo bem ingles :P simplesmente no que toca a programação atrapalho-me uma cado nao sei pk, em expecial com coisas que nunca mexi como é o caso do swing :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nesse caso é só meteres mãos à obra e se tiveres dúvidas pedir ajuda :P, até.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Knitter, tudo o que disseste é (quase tudo) verdade, o SWT e o Swing são filosofias distintas.

Sou um pragmático, e na realidade há que analisar muito bem se ter look & feels diferentes e colocar maior trabalho no programador é algo bom ou mau.

Por exemplo, ter vários look & feels não é algo que seja critico para mim, já a performance é um ponto criticio para mim e para os utilizadores.

O SWT também é independente da plataforma, o que faz é implementar os componentes que faltam em cada uma das plataformas em que é suportado.

É verdade que o SWT pode dar mais trabalho ao programador, mas é para isso que cá estou :P, o que me interessa é que o resultado final seja uma aplicação que ajude o utilizador e não uma aplicação que leve o utilizador ao desespero pela sua lentidão (como já vi acontecer várias vezes)...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
desespero pela sua lentidão (como já vi acontecer várias vezes)

Isso é culpa do programador :P. Tens razão o swt é multiplataforma, afinal é java, mas é agarrado à plataforma.

E só consigo ver swt para projectos pequenos/medios para os outros a complexidade de manter uma aplicação swt é muito grande.

Se eu quiser voltar a ter acessos invalidos à memoria e bug fantasmas então uso swt. :) :), a brincar claro!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
desespero pela sua lentidão (como já vi acontecer várias vezes)

Isso é culpa do programador :P. Tens razão o swt é multiplataforma, afinal é java, mas é agarrado à plataforma.

E só consigo ver swt para projectos pequenos/medios para os outros a complexidade de manter uma aplicação swt é muito grande.

Se eu quiser voltar a ter acessos invalidos à memoria e bug fantasmas então uso swt. :) :), a brincar claro!

Por acaso eu faço exactamente o contrário: Swing só para aplicações pequenas, pois o seu peso torna as aplicações grandes inutilizaveis...

Mas é um facto que dá muito mais trabalho e, já me deparei com cenas destas, por vezes há limitações que considero estúpidas... :/

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E aqui está a prova que por mais experientes que sejam, dois programadores nunca estão de acordo :P

Não que esteja a dizer que eu sou experiente, nada disso :)

Mas que é um facto curioso é, ainda na semana passada um colega que está fazer um projecto com uma base de dados complexa abordou-me e enquanto eu falava com outro meu colega e perguntou-nos o que era melhor, colocar as protecções na base de dados ou construir uma camada de acesso à base de dados que protegesse a mesma, eu respondi-lhe "constroi uma camada de negocio", o meu colega respondeu-lhe, "restringe na BD", enfim no more off-topic :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isto porque em programação não existe um caminho único para chegar ao mesmo resultado, logo a divergência de opiniões.  :biggrin:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E aqui está a prova que por mais experientes que sejam, dois programadores nunca estão de acordo :)

Não que esteja a dizer que eu sou experiente, nada disso :)

Mas que é um facto curioso é, ainda na semana passada um colega que está fazer um projecto com uma base de dados complexa abordou-me e enquanto eu falava com outro meu colega e perguntou-nos o que era melhor, colocar as protecções na base de dados ou construir uma camada de acesso à base de dados que protegesse a mesma, eu respondi-lhe "constroi uma camada de negocio", o meu colega respondeu-lhe, "restringe na BD", enfim no more off-topic :)

É por isso que adoro os "brain storms". :P Inclusivé daqui a pouco vou fazer um...

Permite que sejam discutidos vários pontos de vista e normalmente resultam numa solução melhor do que a que cada participante tinha na sua cabeça de forma individual. :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas, não sei se isto te vai ajudar, mas visto teres problemas com o inglês aconselho-te um livro que na minha opinião é muito bom, apenas peca no índice que é uma autentica porcaria :x, nada é perfeito, mas ao que interessa, que é o conteudo, ai tens algo que considero de boa qualidade para quem está a iniciar-se em Swing, também fala em AWT e faz como que um AWT vs Swing. Tem muitos exemplos práticos, alguns exercicios...não vai muito a fundo, sendo ideal mesmo pra iniciar.

Aqui fica o nome: Programando em Java 2 Interfaces Gráficas e Aplicações Práticas com AWT e Swing, Editora Érica, de Osmar J. Silva.

Respectivo site da editora com o livro:    http://www.editoraerica.com.br/buscafinal.asp?cod=0255

Não sei se no sitio onde vives será facil de o encontrar...eu comprei o meu em Lx na Bertrand do Chiado...

Espero que ajude em algo e bom trabalho :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois é complicado arranjar livros bons em Portugal geral pelo menos eu noto um pouco isso, em todo o caso muito obrigado pela dica :P vou ver se arrranjo.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu tou a programar em Java ja a algum tempo, perdoem a minha ignorancia mas eu simplesmente na consigo gostar de swt, se fizer o programa multiplataforma tenho que dar diferentes downloads cada um incluindo os binarios diferentes do swt ( E não são nada pequenos... )

O swing é muito mais extensivel, pêlo que sei.

Eu uso o NetBeans e o Project Matisse, assim tenho visual design das forms, é tão fantastico como nos simplesmente criamos uma class a extender o JPanel e dar-lhe algum Paint com uns riscos etc e depois vais a uma Frame adicionas um custum Bean e das-lhe o Panel que criaste e ja vêz os rabiscos que fizeste no Paint() do JPanel

O netbeans é em si a prova de que o Swing é algo em grande!!

Ah e ja que começou a guerra Swing\SWT, por favor tenhão a bondade de não começar a guerra NetBeans\Eclipse  :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu tou a programar em Java ja a algum tempo, perdoem a minha ignorancia mas eu simplesmente na consigo gostar de swt, se fizer o programa multiplataforma tenho que dar diferentes downloads cada um incluindo os binarios diferentes do swt ( E não são nada pequenos... )

Não creio que se trate de uma questão de gosto mas de pragmatismo.

O Swing é um dos responsáveis pela má fama que o Java tem/tinha em questões de performance, e isso tem uma razão de ser: o Swing pode tornar uma aplicação inusável e levar um utilizador ao "desespero" pelo facto da aplicação lhe atrapalhar o trabalho.

O swing é muito mais extensivel, pêlo que sei.

Eu uso o NetBeans e o Project Matisse, assim tenho visual design das forms, é tão fantastico como nos simplesmente criamos uma class a extender o JPanel e dar-lhe algum Paint com uns riscos etc e depois vais a uma Frame adicionas um custum Bean e das-lhe o Panel que criaste e ja vêz os rabiscos que fizeste no Paint() do JPanel

O netbeans é em si a prova de que o Swing é algo em grande!!

Ah e ja que começou a guerra Swing\SWT, por favor tenhão a bondade de não começar a guerra NetBeans\Eclipse  :P

Mas qual guerra??? Eclipse e JFace rules!!! :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

M6 nao sei se concordo 100% contigo é verdade que swing é um pouco pesado mas isso todo o java é infelizmente, mas com o java1.6 axo ke isso vai ser resvolvido :P

Em relação a swt ja trabalhei e pessoalmente nao gostei muito a meu ver kebra um bocado a orientação a objectos,n por outro lado swing com o mesmo programa e sem files extra permite ter aspecto win, gtk, mac ou o default java metal o que no swt tem de ser feito com varios pacotes.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

M6 nao sei se concordo 100% contigo é verdade que swing é um pouco pesado mas isso todo o java é infelizmente, mas com o java1.6 axo ke isso vai ser resvolvido :P

Então não estás mesmo de acordo comigo. O Java não só não é pesado como até tem performances bastante boas deste a versão 1.4. Isto não é verdade quando falamos de aplicações com interfaces gráficas como o Swing, que degradam, e muito, a performance.

Em relação a swt ja trabalhei e pessoalmente nao gostei muito a meu ver kebra um bocado a orientação a objectos,n por outro

Essa de quebrar o paradigma OO não percebi... Importas-te de explicar melhor?

lado swing com o mesmo programa e sem files extra permite ter aspecto win, gtk, mac ou o default java metal o que no swt tem de ser feito com varios pacotes.

De forma pragmática isso de nada vale. Além de que o swing tem muitos "ficheiros extra" (como lhes chamam), só que já vão incluidos no JDK/JRE e o pessoal nem dá por ela.

Basta ver que o Swing é a resposta às limitações do AWT, o Swing implementa todos os controles em todos os ambientes, ou seja, tem um "chorrilho" de código para implementar todas os objectos em todos os ambientes.

Já o SWT faz uma gestão mais inteligente, usa que o sistema tem disponível e implementa apenas o que falta no sistema em que está a correr: é fácil ver que o SWT é mais leve não só em memória como em "ficheiro extra".

O Swing é giro e tal, mas analisando a coisa friamente, qual a mais valia de ter vários look & feels em especial quando isso se reflecte de forma altamente nefasta na performance da aplicação? Basta perguntarem a vocês mesmos se preferem uma aplicação gira que vos atrapanhe no nosso trabalho ou uma aplicação que não se intrometa na vossa performance quando estão a trabalhar.

Se repararem com atenção não vêm nenhuma grande aplicação a usar Swing: é comum ver aplicações como consolas de DB2 usarem Java, mas a IBM sabe que não se pode dar ao luxo de ter aplicações bonitas em Swing porque o que as pessoas querem é que aquilo responda depressa.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pá mas a meu ver swt usa coisas sem logica nenhuma por exemplo.

while (!shell.isDisposed())
  {
   if (!display.readAndDispatch())
   {
    display.sleep();
   }
  }
    display.dispose();
   }

Axo absurdo ter de usar codigo como este para fazer com que a janela se mantenha aberta com swt :S

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora