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

Sign in to follow this  
SunShade

Swing ou swt?

Recommended Posts

Knitter

Isso dependerá sempre do projecto no qual pretendes aplicar uma ou outra framework.

De forma rápida e pessoal, posso apontar alguns pontos contra o SWT e a favor do Swing:

- Swing é multiplataforma no que toca à visão do Java e é standard da tecnologia, estando disponível sempre que existir uma JVM, SWT não.

- Maior número de componentes e adesão aos padrões de desenho, como MVC, em SWT isso não é tão comum.

- SWT obriga a acrescentares sempre as bibliotecas de cada plataforma onde queres executar a aplicação.

- Embora não seja exclusivo, SWT é tipicamente programado com Eclipse, enquanto que Swing podes usar NetBeans IDE e o excelente designer gráfico que este oferece.

- Não estás sujeito a bugs específicos de cada plataforma.

- Apesar de dizerem que é nativo, o aspecto das aplicações SWT não se mistura bem com os meus SOs, por isso é algo discutível, onde até o Swing, que supostamente é diferente, se mistura melhor com as restantes aplicações.

No fundo, ambas as frameworks fazem o mesmo, mas de formas bastante distintas, quer no modo de programar, quer no que toca aos recursos usados e integração com o SO. A escolha dependerá bastante do tipo e objectivo do projecto que pretendes criar, já que o que é válido como eliminação num caso pode ser a escolha no outro.

Se tiveres dúvidas mais objectivas é melhor, porque comparações de qual a melhor não te ajudarão muito, serão sempre presas a opiniões e experiências pessoais.

Share this post


Link to post
Share on other sites
SunShade

eu tenho mais experiencia em utilizar swing e o netbeans e o meu IDE favorito mas tive a ouvir uma opiniao de uma pessoa com bastante experiencia que me disse que o swt em termos de desempenho quer em termos da janelinha ficar mais bonitinha e misturada com as do SO.Nunca usei o swt mas o facto de ter d andar a instalar plugins para o usar no eclipse e andar com os jars atras nao me motiva.Tambem me disseram que o funcionamento do swt e um bocado diferente do swing.nunca me queixei do swing mas o que eu gostava de ser era em termos pessoais o que preferias se tivesses de usar um por exemplo?

Share this post


Link to post
Share on other sites
Knitter

Pessoalmente, Swing. Que funcionam de forma diferente é indiscutível, a questão de performance é algo que, na maior parte das vezes, cai é em cima do programador. As diferenças de perfornance não pendem muito a favor do SWT, aliás, Swing com algumas das características, consegue ser mais rápido, é por exemplo mais rápido desenhar alguns componentes que pedir ao SO que o faça, mas isso é negligenciável, as diferenças de performance, a existir, serão a menor das preocupações. Curiosamente o NetBeans IDE corre melhor desde a versão 6 que o Eclipse na sua versão 3.1 em todas as máquinas onde tive de os usar.

Quanto a ficar mais bonita, isso não concordo, aliás, voltando ao Eclipse, aquilo está longe de ser o aspecto nativo de uma aplicação Windows, e nunca o tive a funcionar integrado correctamente nos meus temas do Ubuntu, mesmo agora em OS X, o NetBeans IDE é bem mais "nativo" que o Eclipse. Mas sendo a única aplicação SWT que corro, posso estar a fazer uma má comparação.

As minhas razões para usar Swing são o que mencionei: standard, mais componentes, IDE com óptimo suporte para design usando editor gráfico, não fico sujeito a bugs do SO, como acontece com o SWT, padrões com os quais gosto de trabalhar, como é o MVC, facilidade de extender um componente para criar novos componente, por exemplo, criar uma área de scroll para thumbnails de imagens é tão simples como colocar uma JLabel com a imagem dentro de uma JList. O que também não gosto no SWT é a necessidade de controlar mais os recursos e a forma como funciona.

Novamente, isto é opinião pessoal, que embora possa ser apoiada por alguns anos de trabalho com Java não deixa de ser construída com base no que foi a minha experiência, certamente há que discorde, e devo dizer que não escolho tecnologias para desenvolvimento com base na minha preferência mas sim com base no que é melhor para o projecto. Portanto, embora goste mais de Swing e use exclusivamente Swing, não descarto a hipótese de precisar de usar SWT.

Swing e SWT, infelizmente, não se  misturam bem, pelo que será complicado usar os dois no mesmo sistema.

Share this post


Link to post
Share on other sites
SunShade

Muito obrigado entao!a tua opiniao veio reforçar a minha ideia.Axo que por agr vou me deixar continuar a utilizar o swing e quando nao tiver muito trabalho tento fazer qualquer coisa em swt =)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.