Usar Swing para desenvolver um soft para comércio é ruim?

Volto a dizer não trocaria Java por .net, mas se tivesse que trocar não seria o fim do mundo.
Só prefiro java por causa do envolvimento.
Mas a facildade que eu falei e concordaram ai é a que o visual Studio proporciona. Porém sem o visual studio já sobrevivi tb, bom não sou expert em C#, mas já trampei com ele,
e utilizava sharpdevelop como IDE.
Não é um visual Studio, mas cai bem…
http://www.icsharpcode.net/opensource/sd/

Agora qm qrer testar, utilize o sharpDEvelop e depois o visual studio e veja a diferença.

Eu acho possível sim. Tem um sistema do Correios que é em Swing e dizem (digo ‘dizem’ por não ter visto com meus próprios olhos) que o JEdwards da Oracle é em Swing.

Aliás, testei esse WindowsBuilderPro. Putz, é lindo hein? Eu nunca gostei de NetBeans. Encontrei o JFormsDesigner que é 10 pro Eclipse. Esse WBP é 20 mil vezes melhor… Até o padrão dos nomes ele segue. Se eu coloco uma label e coloco um texto do tipo “User name:”, o nome da variável da JLabel fica “lblUserName”. Muito legal =)

Editado: Vi o JFormsDesigner 5 hoje e ele tem muita coisa parecida com o do WBP… Parece-me que os dois vão brigar feio no mercado.

Também já vi muita aplicação comercial em Swing. Como o colega lembrou, as ferramentas de desenvolvimento da Oracle geram uma interface em Swing pra seus produtos e funciona legal.

O sistema de Correios é feito em Swing sim, e o das lotéricas também. É um pouco mais pesado do que feito em código nativo, naturalmente, mas pras máquinas de hoje em dia não é crítico, e ainda tem o ganho da independência de plataforma.

[quote=Andre Brito]Eu acho possível sim. Tem um sistema do Correios que é em Swing e dizem (digo ‘dizem’ por não ter visto com meus próprios olhos) que o JEdwards da Oracle é em Swing.

Aliás, testei esse WindowsBuilderPro. Putz, é lindo hein? Eu nunca gostei de NetBeans. Encontrei o JFormsDesigner que é 10 pro Eclipse. Esse WBP é 20 mil vezes melhor… Até o padrão dos nomes ele segue. Se eu coloco uma label e coloco um texto do tipo “User name:”, o nome da variável da JLabel fica “lblUserName”. Muito legal =)

Editado: Vi o JFormsDesigner 5 hoje e ele tem muita coisa parecida com o do WBP… Parece-me que os dois vão brigar feio no mercado.[/quote]

Me diz uma coisa, esse plugin WindowsBuilderPro, como faz pra baixar ele? Não costumo usar eclipse então toh meio perdido. Vi que alguns plugins tem um botão install na pagina, mas esse não tem.

[quote=Grinvon]Algumas dicas que podem ser relevantes no contexto de programação swing são:

Saiba usar bem o conceito de threads, no swing, não deixe que tudo seja alocado para a threadlocal dele, pois frequentimente algumas operações podem ficar em ?locked?;

Utilize o Swing Application Framework, inclusive, o netbeans já vem com projeto de exemplo, um escopo simples e já feito para apresentar como trabalhar como esse novo padrão;

Utilize o Matisse para geração das telas, é intuitivo, fácil de administrar, mesmo com alguns bugs.[/quote]

O swing não é thread safe. Isso quer dizer que se você não desenhar bem a aplicação vai perder muito desempenho. Até um tempo atras eu diria para usar swt em resposta ao swing, mas hoje em dia em termos de desempenho eles são a mesma coisa.

Vantagens.
*light weight - É totalmente escrito em java.
*Faz parte da biblioteca padrão e está presente na jvm. Isso diminuii consideravelmente dependências de software;
*Ótimo suporte para Opengl
*Simples de entender.

Contras.
*Não é thread safe - A Aplicação deve ser bem dividida em tarefas(threads)(Isso inclui os componentes da interface gráfica) para evitar comportamentos estranhos como congelamentos etc.
*Alto consumo de memória. Por ser java o swing é inteiramente carregado na memória(ao contrário do swt que usa recursos nativos do sistema) da jvm. O alto consumo não influencia na velocidade de processamento mas é o que impede as aplicações java de serem populares para desktop.

na minha opinião usaria o swing em contrapartida a todas as outras. O custo benefício é ótimo.

Dá uma olhada neste link.

Entendi seu ponto de vista.

Porem vc já notou que toda “linguagem” que se firma entre “pequenos programadores e aqueles que só sabem arrastar e soltar” tem resultados desagradaveis?

Por exemplo:

a) Cai em desuso ou vira “carne de vaca” (Clipper, Dbase (II, III, V), Basic, Vb, Delphi);
b) Drastica redução de “salarios”.
c) Sistemas dificeis de se fazer manutenção.
d) Arquitetura pobre.
e) Alta rotatividade.
f) Abandono de projetos.
g) Desvalorização da classe.

flws[/quote]

Existe uma classe para “pequenos programadores” em linguagem Windows? :lol:

Testei o WindowBuilder Pro do Google e achei ruim, pouco intuitivo. Parece que pegaram os principais frameworks para design de telas, juntaram tudo e colocaram no Eclipse. Ainda acho que o NB ganha em facilidade.

[quote=mochuara]
Existe uma classe para “pequenos programadores” em linguagem Windows? :lol: [/quote]

Não é uma classe, mas é um outro nicho de mercado, dentre vários que existem na nossa área.

Ou você acha que esses caras ameaçam seu trabalho?

eduacsp,

Se fosse fácil pra implementar teclas de atalho por exemplo, você usaria Java?
E se fosse web?
http://www.sproutcore.com/

Dá pra implementar várias teclas de atalho e uma interface bem intuitiva também com o GWT do Google. E daí seu cliente não precisa instalar um programa(.exe), basta um browser.

É só uma dica, valeu!

Acredito que optando por swing, o swingbean seria uma boa pedida para a produtividade e qualidade no desenvolvimento.

Dá uma olhada neste link.[/quote]

Valeu pela dica, tinha testado aquele link dali mas não dava em nada. Dai alterei na mão para esse: http://dl.google.com/eclipse/inst/d2wbpro/latest/3.6 e consegui instalar.

Até agora achei bem interessante, vou ver se monto alguma coisa mais tarde, valeu de novo.

[quote=marcosalex][quote=mochuara]
Existe uma classe para “pequenos programadores” em linguagem Windows? :lol: [/quote]

Não é uma classe, mas é um outro nicho de mercado, dentre vários que existem na nossa área.

Ou você acha que esses caras ameaçam seu trabalho?[/quote]

Não é um outro nicho de mercado, e sim uma concorrência comoditizada de serviços de TI. Eu entendi o que o fantomas quis dizer, e não concordo que Java esteja em outro patamar. Só que ele esta equivocado porque o resultado é agradável sim para o mercado, porque com o aumento da oferta os preços caem.

se escolher o java como plataforma vai ter que usar o swing pra desktop (visto que vc é iniciante e assim vai ter o netbeans pra te ajudar com as telas).

[quote=mochuara]
Não é um outro nicho de mercado, e sim uma concorrência comoditizada de serviços de TI. Eu entendi o que o fantomas quis dizer, e não concordo que Java esteja em outro patamar. Só que ele esta equivocado porque o resultado é agradável sim para o mercado, porque com o aumento da oferta os preços caem.[/quote]

Eu entendo seu ponto de vista, mas acredito que esse processo de comoditização independe da linguagem, é da própria área e é uma tendência para determinadas tarefas que são passíveis disso. Não é querendo boicotar as linguagens e IDEs mais produtivas e fáceis que vai mudar, tem tarefas que vão ficar mais automáticas, mão de obra bara que vai fazer, não tem jeito.

É assim em outras áreas, não só na TI. O profissional pra ganhar bem não pode ficar restrito no básico.

[quote=marcosalex][quote=mochuara]
Não é um outro nicho de mercado, e sim uma concorrência comoditizada de serviços de TI. Eu entendi o que o fantomas quis dizer, e não concordo que Java esteja em outro patamar. Só que ele esta equivocado porque o resultado é agradável sim para o mercado, porque com o aumento da oferta os preços caem.[/quote]

Eu entendo seu ponto de vista, mas acredito que esse processo de comoditização independe da linguagem, é da própria área e é uma tendência para determinadas tarefas que são passíveis disso. Não é querendo boicotar as linguagens e IDEs mais produtivas e fáceis que vai mudar, tem tarefas que vão ficar mais automáticas, mão de obra bara que vai fazer, não tem jeito.

É assim em outras áreas, não só na TI. O profissional pra ganhar bem não pode ficar restrito no básico.[/quote]

Pode não ser o seu caso, mas pra quem presta serviços de ti como desenvolvedor, acho interessante boicotar essas linguagens estaticas sim, afinal é quem vai sofrer competiçao comoditizada mais diretsmente, com o risco de trabalhar ao lado de pessoas que acreditam que sua produtividade esta relacionada a uma determinada IDE.

[quote=mochuara]
Pode não ser o seu caso, mas pra quem presta serviços de ti como desenvolvedor, acho interessante boicotar essas linguagens estaticas sim, afinal é quem vai sofrer competiçao comoditizada mais diretsmente, com o risco de trabalhar ao lado de pessoas que acreditam que sua produtividade esta relacionada a uma determinada IDE. [/quote]

Não seria melhor então você deixar as linguagens estáticas com IDEs produtivas pra esse mercado comoditizado e você simplesmente focar nas linguagens dinâmicas e no mercado que as usa, que precisa das vantagens dela, não são atendidos bem pelas linguagens estáticas e que valoriza o seu perfil, já que exige mais conhecimento e outras habilidades?

Por isso eu usei o termo “nicho”.

De qualquer forma, respeito sua opinião.

se escolher o java como plataforma vai ter que usar o swing pra desktop (visto que vc é iniciante e assim vai ter o netbeans pra te ajudar com as telas).[/quote]

Bom, ele pode usar o jface/swt. Esses toolkits são muito bons visto que utilizam recursos nativos(Há uma vantagem nisso já que você permite que o sistema operacional execute algumas tarefas para você(ganho de recursos)). Mas em termos de gráfico, java2d arrebenta.
Até hoje tenho algumas dúvidas quanto ao desempenho da classe Device do swt/jface. Alguém sabe me dizer se ela utiliza aceleração da gpu(java2d utiliza, mapeando a opengl)?

Uso o NetBeans para programar (tando para a web como para desktops).
Claro, estude também o swing antes de partir para as IDEs. :slight_smile:

[quote=marcosalex][quote=mochuara]
Pode não ser o seu caso, mas pra quem presta serviços de ti como desenvolvedor, acho interessante boicotar essas linguagens estaticas sim, afinal é quem vai sofrer competiçao comoditizada mais diretsmente, com o risco de trabalhar ao lado de pessoas que acreditam que sua produtividade esta relacionada a uma determinada IDE. [/quote]

Não seria melhor então você deixar as linguagens estáticas com IDEs produtivas pra esse mercado comoditizado e você simplesmente focar nas linguagens dinâmicas e no mercado que as usa, que precisa das vantagens dela, não são atendidos bem pelas linguagens estáticas e que valoriza o seu perfil, já que exige mais conhecimento e outras habilidades?

Por isso eu usei o termo “nicho”.

De qualquer forma, respeito sua opinião.

[/quote]

Receita para morrer de fome IMHO. O cliente não da a minima pra qual linguagem vc usa, e portanto vai escolher a que sai mais barato pra ele, que é, contratar programadores macdonalds.