Linguagem para desenvolvimento desktop

Alguém conhece alguma linguagem interessante pra desenvolver aplicações desktop? Tanto no linux e windows, e que tenham ferramentas pra desenvolver interfaces gráficas.

No inicicio eu trabalhei muito com java swing, porém com o tempo, migrei para o javaFx e consegui fazer aplicações bem interessantes.

caso tenha um tendencia a estudar Java, vale a pena verificar o Fx e swing.

O swing não é viável, use para fins de aprendizado.
A construção da interface no javafx é muito mais fácil depois que entende o funcionamento.
Um ponto bom é que o nome dos componentes foi mantido, removendo apenas o J, exemplo JLabel, em java fx é apenas Label, JFileChoser, é apenas FileChoser.

Hoje em dia há ferramentas como essa: https://electron.atom.io/

Acho que o Atom (editor de texto do github) e o client do Slack sao feitos baseados nesse tipo de tecnologia (basicamente um mini browser rodando no node.js)

A vantagem que vejo é a simplicidade de criar UI usando html + css + javascript. É a mesma experiência de criar apps web. A desvantagens é que o consumo de recursos nao é dos mais otimizados, mas isso só te causará problemas se tiver fazendo algo de alta performance.

Pra mim é mais viável usar algo assim, do que ficar insistindo no java para aplicaçoes desktop.

1 curtida

A combinação de html + css + javascript para desktop, está longe de parecer algo realmente profissional.

Com certeza JavaFX, e ainda mais agora no pré lançamento de java 9, com o Jigsaw projetos modulares e com o projeto panama, dão uma ideia do poder e evolução da plataforma/linguagem Java.

Pode nao parecer a primeira vista, mas aconselho a procurar exemplos de apps que já usam isso (como os dois exemplos que citei).

Um exercício que eu faria é procurar quantas apps conhecidas usam Java Fx e quantas estao usando essa combinaçao.

Se voce tivesse falando de linguagem C++, Delphi, VB pra desktop até vai lá, agora javascript pra desktop fala sério. Já em relação a JavaFX e’ comprarar tostão com milhão. Mas enfim, se você gosta e usa e e’ bom nisso beleza. Que seja feliz e boa sorte, porque você vai precisar, ainda mais programando em desktop com esse seu trio.

1 curtida

Se os seus clientes finais realmente usam desktop Linux, a solução mais profissional é usar C++. Tem a ferramenta Qt pra ajudar na parte gráfica.

Eu comecei usando a biblioteca Java Swing justamente por ter mais conteúdo em fóruns que pudesse me ajudar! Pra falar a verdade eu ainda uso o Swing e estou com medo de migrar para o JavaFX 2.0 (tenho medo de estranhar demais a interface e ter dificuldades haha)!

Teu cliente usa qual sistema operacional no desktop/note?

1 curtida

Bom,eu tenho bastante experiencia com Swing em ter desenvolvido muitos sistemas desktops com ele, e depois passei a usar JavaFX, não existe dificuldade nenhuma, pelo contrário ficou até mais simples.

Quando JavaFX era aquela linguagem inicial de Script eu assim como um monte de programadores corriamos dela, pois tinha que aprender uma outra linguagem, depois que a Oracle comprou a Sun e transformou aquela linguagem de Script em uma biblioteca a exemplo do Swing dentro do java, bingo.

Tenho coisas aqui com o Swing awt usando Graphics2D que consumem 700 mega, o mesmo programa usando JavaFX com GraphicsContext consume menos de 200 mega e vai ficar ainda menor com o java 9 com a modularização.

1 curtida

Ubuntu 16.04.3 LTS
:slight_smile:

Você tem algum curso/apostila que possa me ajudar no aprendizado do JavaFX??

Eu já tenho a base em java, vou olhar o JavaFX. Quanto ao electron eu achei bastante interessante.
Obrigado, a todos, pelas dicas!!!

Tem muita coisa na net sobre javaFX, mas sugiro voce começar por baixar o http://jdk.java.net/8/ e rodar o java -jar Ensembler.jar

Este e’ um bom material :

http://docs.oracle.com/javase/8/javase-clienttechnologies.htmml)

Desenvolvo em Swing e estudo java web não para migrar mais para trabalhar com os dois juntos, exemplo tenho uma aplicação que funciona em Swing e pretendo fazer uma em web para consultas no banco de dados no mesmo banco que o swing trabalha.