Java e C#

33 respostas
C

Bom, comecei a desenvolver em java a pouco tempo, e paticularmente estou gostando muito, ma so problema é q desenvolvo para desktop, e java tem o problema de ser um poico lento para desktop, como todos sabem, dae ouvi falar q C# é bem rapido para desktop, mais fico meio assim de largar mao do java pra aprender C#, vou desenvolver um projeto desktop, e ele precisa ser bem rapido nos processamentos, e deve rodar em uma maquina não muuito boa…media…Li uns tópicos akii no GUJ, mais ainda estou indeciso, gostaria da opnião de v6…

Parto pro C#, ou constinuo firme e forte no Java?

33 Respostas

T

Aprenda os dois. Ou sua cabeça é do tamanho de uma cabeça de palito de fósforo? Quanto mais você aprende, mais você sabe que não sabe é coisa nenhuma. Então aprenda os dois.

rdgms

http://www.guj.com.br/posts/list/14889.java

C

Aprende eu vou aprender os dois ctz…mais acho q nao ficou muito claro minha duvida, Para desenvolver esse projeto que eu mencionei, devo usar C# ou JAVA? , como sou novo em ambas, vou ter q me dedicar mais a uma das duas no momento.

eduveks

Java é lento para desktop? Des de quando?

Acho q isto é uma opinião equivocada… há tanta coisa em Java para desktop e nada lento, muito pelo contrário, uso o Netbeans, o SmartSVN, Eclipse, e por ai vai… tudo em Java Desktop… e ai?

E semana passanda precisei fazer um applet (não deixa de ser desktop) manhoso aqui e ficou nos trinques.

eduveks

Aprende eu vou aprender os dois ctz…mais acho q nao ficou muito claro minha duvida, Para desenvolver esse projeto que eu mencionei, devo usar C# ou JAVA? , como sou novo em ambas, vou ter q me dedicar mais a uma das duas no momento.

Ha é se vc é novato simplesmente não faça! Não faça nada sério enquanto ainda for novato, so vai fazer merd@!

Vá com calma, aprenda bem uma coisa e depois faça coisas para ir para produção.

O que vc quer fazer é o mesmo q dar um tiro no pé.

C

eduveks:
Java é lento para desktop? Des de quando?

Acho q isto é uma opinião equivocada… há tanta coisa em Java para desktop e nada lento, muito pelo contrário, uso o Netbeans, o SmartSVN, Eclipse, e por ai vai… tudo em Java Desktop… e ai?

E semana passanda precisei fazer um applet (não deixa de ser desktop) manhoso aqui e ficou nos trinques.

Bom, desculpa se falei beteira, mas como eu disse sou iniciante, e como todo bom iniciate…li varias coisas…e em algumas deleas diziam q java desktop é lento, inclusive aki no guj tem um topoco q diz isso( http://www.guj.com.br/posts/list/14889.java )…

não estou dizendo q ele é estremamente lento, mas sim mais lento que outras tecnologias…

T

Hum… normalmente por aí eu vejo que o pessoal faz programas para desktop em .NET e para servidor em Java ou .NET. Para fazer programas desktop que funcionem bem em Java é preciso um pouco de dedicação e estudo, porque é muito fácil fazer programas desktop Java que sejam lentos.

rdgms

Sim eu concordo que ele seja mais lento que .net mais vc tem que levar em consideração quais vantagens o java (mesmo em desktop) traz para vc!!!
Hibernate , SWING (MVC), Mysql…
http://www.javaworld.com/javaworld/jw-04-1998/jw-04-howto.html

eduveks

caloro:
eduveks:
Java é lento para desktop? Des de quando?

Acho q isto é uma opinião equivocada… há tanta coisa em Java para desktop e nada lento, muito pelo contrário, uso o Netbeans, o SmartSVN, Eclipse, e por ai vai… tudo em Java Desktop… e ai?

E semana passanda precisei fazer um applet (não deixa de ser desktop) manhoso aqui e ficou nos trinques.

Bom, desculpa se falei beteira, mas como eu disse sou iniciante, e como todo bom iniciate…li varias coisas…e em algumas deleas diziam q java desktop é lento, inclusive aki no guj tem um topoco q diz isso( http://www.guj.com.br/posts/list/14889.java )…

não estou dizendo q ele é estremamente lento, mas sim mais lento que outras tecnologias…

Duas coisas:

:arrow: Vc leu na segunda página o que o Luca diz?

:arrow: Vc reparou na data do tópico? 2004! Epa acho que já passaram 4 anos e muita coisa muda, inclusive o Java esta cada vez mais rápido, fizeram varias melhorias de 2004 pra cá…

W

rdgms:
Sim eu concordo que ele seja mais lento que .net mais vc tem que levar em consideração quais vantagens o java (mesmo em desktop) traz para vc!!!
Hibernate , SWING (MVC), Mysql…

Sem entrar na discussao de qual eh melhor (ate porque eu gosto mais de Java)
Da pra usar NHibernate e mysql em .NET :slight_smile:

peczenyj

.Net pode ser extremamente dependente da plataforma windows portanto se vc quer aprender C# de uma olhada no projeto Mono :wink:

fantomas

caloro:
Bom, desculpa se falei beteira, mas como eu disse sou iniciante, e como todo bom iniciate…li varias coisas…e em algumas deleas diziam q java desktop é lento, inclusive aki no guj tem um topoco q diz isso( http://www.guj.com.br/posts/list/14889.java )…

não estou dizendo q ele é estremamente lento, mas sim mais lento que outras tecnologias…

Então…realmente o Java para desktop (swing) ÉRA mesmo considerado muito lento comparado com outras linguagens como VB, Delphi etc…mas isso foi ajustado nos últimos anos devido ao apelo da comunidade (porque não éra a idéia inicial) e hoje ficou mais competitiva em relação a isso.

Mas voltando ao seu ponto é o seguinte: A performance nem sempre está diretamente ligada a linguagem aplicada e sim a qualidade do código e a arquitetura adotada sem falar na dedicação do desenvolvedor na busca pela velocidade.

Talvez se vc falasse um pouco como é o seu projeto o pessoal desse algumas idéias para lhe ajudar na decisão.

flws

fredferrao

eduveks:
caloro:
eduveks:
Java é lento para desktop? Des de quando?

Acho q isto é uma opinião equivocada… há tanta coisa em Java para desktop e nada lento, muito pelo contrário, uso o Netbeans, o SmartSVN, Eclipse, e por ai vai… tudo em Java Desktop… e ai?

E semana passanda precisei fazer um applet (não deixa de ser desktop) manhoso aqui e ficou nos trinques.

Bom, desculpa se falei beteira, mas como eu disse sou iniciante, e como todo bom iniciate…li varias coisas…e em algumas deleas diziam q java desktop é lento, inclusive aki no guj tem um topoco q diz isso( http://www.guj.com.br/posts/list/14889.java )…

não estou dizendo q ele é estremamente lento, mas sim mais lento que outras tecnologias…

Duas coisas:

:arrow: Vc leu na segunda página o que o Luca diz?

:arrow: Vc reparou na data do tópico? 2004! Epa acho que já passaram 4 anos e muita coisa muda, inclusive o Java esta cada vez mais rápido, fizeram varias melhorias de 2004 pra cá…

Exato, olha a data do topico: 17/08/2004 09:03:27

Cuidado ao fazer buscas no GUJ e nao olhar a data do topico.

Ele tinha a fama de ser lento mesmo, mas isso era no java 1.3 ou 1.4, do 1.5 em diante que mais utilizei, tirando os segundos iniciais para startar o programa de resto considero a velocidade como qualquer outra linguagem, normal, e eu vim do Delphi.

C

Bom, vlw por todas as respostas, vou prestar mais atenção nas data…hehehe…e fico mais tranquilo qto a minha escolhe…Java…vlw mais uma vez…e até mais…

josenaldo

“Lento?! THIS IS JAVAAAAAAAA” Leônidas sobre Java

danilomunoz

Concordo plenamente! Já vi várias vezes app DotNet Desktop lenta também. E, assim como no Java, esse assunto precisa de um pouco de atenção.

celso.martins

Sensacional o tom socrático!!

Compartilho da mesma opnião. Ainda mais considerando que a sintaxe, ao que me pareceu nas minhas curtas viagens ao mundo C#, são muito parecidas.

Como eu sempre digo (digo porque ouvi falarem e me parece muito sensato): Não se prendam a tecnologias. Seria ótimo pro seu gerente se você fosse capaz de indicar a melhor solução para resolver o problema dele/cliente.

Já fui apaixonado pelo Basic, DBase III Plus programado, Clipper, Delphi e hoje amo o Java. Mas sou promíscuo. Amanhã posso estar amando outra. Isso é adaptação, sobrevivência.

No meu penúltimo emprego tinha cabra apaixonado pelo Win98 (em pleno 2005). Advinhou? A máquina dele era a que dava a maior dor de cabeça. Não estou dizendo para mudar de tecnologia como muda-se de roupa (Até hoje não uso o Vista pq achei uma m****), mas a partir do momento que foi provado que a tecnologia está estável, pq não mudar??

Muito mais se dá com linguagens contemporâneas e que possuem a mesma eficiência para requisitos diferentes. Pq o preconceito? Abrir a cabeça, este é o ponto. Ainda mais quando estamos num momento de aprendizado, como a maioria de nós estamos.

Outro exemplo: Estou querendo melhorar a minha arquitetura, minha OO. Assim, a assinatura do victorwss (Acho que é isso): “Arquitetura de sistemas: Eu prefiro ser essa metamorfose ambulante do que ter aquela velha opnião formada sobre tudo”, foi uma coisa que me fez pensar. Todos os dias estou descobrindo uma forma melhor de fazer as coisas, aí eu pergunto: Pq não refatorar? Crio um sistema piloto, vejo se a bagaça faz sentido e refatoro mesmo, sem dó nem piedade. E tem funcionado.

Aprendam a programar bem, entendam a OO. Assim, creio eu, tecnologias, sintaxes, não serão mais do que um empecilho de 15 dias.

E vamos que vamos!!

Abraços

erickles

“Lento?! THIS IS JAVAAAAAAAA” Leônidas sobre Java

ruhrauarhuarhrau boa!

sergiotaborda

caloro:
Bom, comecei a desenvolver em java a pouco tempo, e paticularmente estou gostando muito, ma so problema é q desenvolvo para desktop, e java tem o problema de ser um poico lento para desktop, como todos sabem, dae ouvi falar q C# é bem rapido para desktop, mais fico meio assim de largar mao do java pra aprender C#, vou desenvolver um projeto desktop, e ele precisa ser bem rapido nos processamentos, e deve rodar em uma maquina não muuito boa…media…Li uns tópicos akii no GUJ, mais ainda estou indeciso, gostaria da opnião de v6…

Parto pro C#, ou constinuo firme e forte no Java?

como em tudo na vida depende de quanto tempo vc tem para fazer o sistema, quanto complexo ele é, e qual é a sua preocupação com a manutenção. O sistema usa banco de dados ? usa gráficos 3D ? Usa um servidor de aplicação centrar ou vai direto no banco ?

Se o sistema é simples o suficiente para vc poder passar algums tempos (3 meses) mexendo com Swing, vá de java.
Se vc tem pressa vá de C#. O RAD do .NET vai ajudar a fazer a aplicação rápido, mas não necessariamente bem.

Java para Desktop executa tão ou mais depressa que .NET o ponto é mais complexo que “arrastar e soltar”. Ajudar vc ter boas noções e prática de OO e conhecimento de padrões, em especial o Observer o Command. Em .NET o tratamento de eventos é diferente e a meu ver mais complexo que o do java, mas o RAD tem a suas vantagens.

Se vc quer aprender a mexer com desktop para o futuro, vá de java. Aprender Swing é uma boa aposta a qualquer momento da carreira do programador java porque os seus mecanismos são tb a base de muitas outras tecnologias.

O .NET tem a desvantagem de não ser retrocompativel o que significa que provavelmente vc via jogar fora o seu codigo quando sair o proximo .NET Framework. O Java não tem esse problema. Portanto é necessário saber quando tempo vc quer que a aplicação dure. Para sempre = java.

Agora um detalhe, o modelo de implementação do Swing é single-threaded. Ou seja, todos os eventos e desenho de tela acontecem na mesma thrread. O programador inexperiente não sabe disso ou não entende o que isso significa e coloca codigos de processamento longo (loops ) dentro de tratadores de eventos do Swing. Isso faz a thread do swing ficar sobrecarregada e o sistema lento. Não é o Swing que é lento, é o codigo que os programadores incluem nele. É preciso ter esta noção para programar corretamente em swing, sempre abrindo novas threads quando ha trabalho demorado para fazer. Sempre apresentando uma barra de progresso, essas coisas…

Swing não é lerdo, lerdo é quem programa Swing sem threads.

C

sergiotaborda:
caloro:
Bom, comecei a desenvolver em java a pouco tempo, e paticularmente estou gostando muito, ma so problema é q desenvolvo para desktop, e java tem o problema de ser um poico lento para desktop, como todos sabem, dae ouvi falar q C# é bem rapido para desktop, mais fico meio assim de largar mao do java pra aprender C#, vou desenvolver um projeto desktop, e ele precisa ser bem rapido nos processamentos, e deve rodar em uma maquina não muuito boa…media…Li uns tópicos akii no GUJ, mais ainda estou indeciso, gostaria da opnião de v6…

Parto pro C#, ou constinuo firme e forte no Java?

como em tudo na vida depende de quanto tempo vc tem para fazer o sistema, quanto complexo ele é, e qual é a sua preocupação com a manutenção. O sistema usa banco de dados ? usa gráficos 3D ? Usa um servidor de aplicação centrar ou vai direto no banco ?

respondendo algumas de suas perguntas:

Tenho um ano para desenvolver, segundo sua dica tempo mais q suficiente para usar Java…hehe…
Quero uma aplicação para “sempre” = Java…

Ou seja, me decidi em desenvolver em java, o q nao diz q nao vou aprender c#…mas sera um processo um pouco mais lento…hehe…

Agora gostaria de pedir um exemplo sobre o que vc falou se possivel, realmente nao sabia que que o swing trabalhava com uma thread…com eu faria para abrir uma thread para cada itracao com o swing, ainda nao esou totalmente familiarizado com trhread…a e c vc puder ja mandar um exemplo de progressBar…agradeco…

vlw pela ajuda

clodoaldoaleixo

Faça em C#, com certeza muito mais produtivo e rápido.

M

"

Thiagosc

Sou da opinião de que só vale a pena aprender tecnologias que mudem a sua forma de pensar sobre desenvolvimento de software. Mudar para C# não vai lhe acrescentar nada.

BTW, não chamaria Hibernate de uma “vantagem”, haha. Diria até que a quantidade de frameworks medíocres, ao invés de um que funcione, e reinvenções da roda seja uma desvantagem do Java. Será que já ouviram falar de uma tecnologia chamada SQL? A principal questão é “por quê”. Por que diabos tudo precisa ser representado por objetos, e por que mapeá-los para um banco de dados relacional de uma forma tão braçal quanto o Hibernate “é lucro”? Meu Deus, mesmo no Java que é uma linguagem super limitada é possível abstrair de forma competente todo o processo de fazer queries e retornar automaticamente beans com os dados.

Sabe, o que estraga o Java é esse incessante acréscimo de camadas e camadas de complexidade e trabalho braçal (XML e afins) para fazer a mesma coisa que se faria sem elas.

rafagil

Java rápido (Rápido mesmo, bem mais rápido que swing ou SWT) e extremamente fácil para codificar no Desktop?

Qt Jambi!

Aprenda isso, garanto que não vai se arrepender.

mais info em: www.trolltech.com

Flws.

fantomas

Calma, tudo é uma questão de opção até mesmo a linguagem Java; se as camadas incomodam demais simplesmente não as use.

flws

rubinelli

Na boa? Esqueça performance, preocupe-se com produtividade.

Nós estamos em 2008, não nos anos 90. Qualquer Xing Ling nas Casas Bahia tem um dual core e 1 giga de RAM. A não ser que você esteja criando o novo Office ou cometendo erros crassos de programação, qualquer linguagem será mais do que suficiente.

V

Boa tarde…

Alguém pode me ajudar. estou prgramando em web e gostaria de saber se alguém tem algum projeto pronto de controle de estoque, tenho que entregar em um prazo curtíssimo.

Abs

Alexandre_Saudate

Thiagosc:
Sou da opinião de que só vale a pena aprender tecnologias que mudem a sua forma de pensar sobre desenvolvimento de software. Mudar para C# não vai lhe acrescentar nada.

BTW, não chamaria Hibernate de uma “vantagem”, haha. Diria até que a quantidade de frameworks medíocres, ao invés de um que funcione, e reinvenções da roda seja uma desvantagem do Java. Será que já ouviram falar de uma tecnologia chamada SQL? A principal questão é “por quê”. Por que diabos tudo precisa ser representado por objetos, e por que mapeá-los para um banco de dados relacional de uma forma tão braçal quanto o Hibernate “é lucro”? Meu Deus, mesmo no Java que é uma linguagem super limitada é possível abstrair de forma competente todo o processo de fazer queries e retornar automaticamente beans com os dados.

Sabe, o que estraga o Java é esse incessante acréscimo de camadas e camadas de complexidade e trabalho braçal (XML e afins) para fazer a mesma coisa que se faria sem elas.

Às vezes eu me pergunto se vc tem mesmo essas opiniões ou fala soh pra bancar o troll, mesmo.

V

Como assim meu amigo, não entendi a sua resposta.

D

[[u]Aprenda os 2.[/u]

Ambas são muito similares e por isto pode-se aprender as duas ao mesmo tempo.

Na minha opinião, umas vantagens e desvantagem que noto nos programas que já fiz em C# e Java.

C#: Vantagens:

1 O tempo de compilação é menor que java.

2 Tem mais coisas automatisadas nela que em java

3 Por não rodar em JVM, é mais lenta

Desvantagens:

1 Depende do .NET frameword instalado

2 Tem menos forums e tutoriais do que Java

3 Só funciona no windows

4 Tem uma média de salario e de empregos inferior a java

Java:

1 Muito popular

2 Multiplataforma

3 Grande média de salario e ofertas de emprego

4 Grátis

Desvantagens:

1 Por rodar em JVM que é virtual machine, é um pouco mais lenta que C#.

2 Muita concorrencia, o que mais tem é programador de java no mercado

Bom, é isto, como toda e qualquer opinião, pode estar errada, mais é minha opinião.

L

É que ele nao respondeu a sua pergunta.

Ele repsondeu um post de mais de 1 ano atrás.

Alexandre_Saudate

É que ele nao respondeu a sua pergunta.

Ele repsondeu um post de mais de 1 ano atrás.

Momento #fail do dia, desculpe.

ViniGodoy

Vandinho, crie um tópico próprio para a dúvida. Esse aqui, além de antigo, não tem absolutamente nada a ver com sua dúvida. Vou tranca-lo pra evitar mais confusão.

Criado 23 de outubro de 2008
Ultima resposta 17 de mai. de 2010
Respostas 33
Participantes 23