| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/04/2010 23:57:12
|
Crown
Debugger
Membro desde: 19/01/2010 17:14:49
Mensagens: 52
Offline
|
Bom o titulo é sensacionalista mas é so para chamar a atencao mesmo...Queria saber como anda os principais pontos do .net e do java, como escalabilidade,peformance,confiabilidade etc.., quem tiver uns benchmaking ou artigos .NET x JAVA pode enviar, o intuito é identificar os cenarios onde cada linguagem se encaixa e nao identificar a "melhor"(ou bala de prata)...obrigado
ps:como eu disse e repito, nao é um post sensacionalista, faz algum tempo que nao vejo nada sobre e queria me atualizar nos melhores cenarios onde as linguagens se encaixam entao resolvi pedir a ajuda de vcs, por favor sem brigas uehuehu
This message was edited 2 times. Last update was at 17/04/2010 09:06:40
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 02:28:13
|
Lucas Emanuel
GUJ Master
Membro desde: 09/08/2009 23:48:57
Mensagens: 1143
Localização: Heap
Offline
|
Na verdade é complicado responder isso. Desculpe se voce me interpretar como mal educado, mas você está no forum de usuários de Java. Então a resposta da maioria fica meio tendenciosa
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 06:56:14
|
Crown
Debugger
Membro desde: 19/01/2010 17:14:49
Mensagens: 52
Offline
|
Em um forum de java mas na area de arquitetura, tem que ser muito infantil para vim nessa area brigar para saber qual é a melhor tecnologia, resumindo nao quero sabe se java trata tipos de refencia diferente do c#, eu quero ver CENARIOS. Se nao tem como conseguir uma resposta decente nessa area é melhor trocar o nome dela.
ps: mas vlw, pela opniao
This message was edited 2 times. Last update was at 17/04/2010 07:00:02
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 08:49:56
|
rogelgarcia
GUJ Master
![[Avatar]](/images/avatar/861e8bae74e22a572164fdb59b1caa8b.jpg)
Membro desde: 21/06/2007 23:27:21
Mensagens: 1850
Offline
|
O povo aqui.. briga até no offtopic.. ehheheh
Mas eu acho que os dois são concorrentes diretos..
O cenário onde os dois melhores se aplicam, são os mesmos..
A diferença principal que eu considero, é que .NET é mais forte na área de desktop do que java...
Mas eu prefiro Java
|
Rógel Garcia, criador do framework NEXT
http://www.nextframework.org
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 08:51:36
|
maxmustang
Java Ninja
![[Avatar]](/images/avatar/5f08ba4b7b2c2544dd215383125d02ea.jpg)
Membro desde: 08/01/2009 11:18:56
Mensagens: 270
Offline
|
Nervosão
|
Kill Rock And RoLL !!!
~ Viva hoje como se Jesus Voltasse ainda hoje ~
~ Jesus te ama!! <3 ~
~ Blog de Java MaxNaWeb: http://maxnaweb.wordpress.com/ ~
~ Blog de RPG Dados Sujos: http://dadossujos.worpdress.com ~
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 10:49:47
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Online
|
Falando só na linguagem, e não nas APIs, acho o C# uma muito mais completo e fácil de usar do que o Java. Ele tem alguns recursos interessantes como os extension methods, propriedades, sobrecarga de operadores e metodos unsafe (dificilmente vc usa esse último, mas é 1000x melhor que escrever um JNI, se vc vier a precisar). Sem falar numa implementação real de generics. São pequenos detalhes que tornam o código mais fácil de ler e de manter.
Gosto também do LINQ, que vem junto com a linguagem. Permite que você rode queries "sql like" em collections. Sem falar que ele usa estratégias eficientes para fazer isso, como um BD faria. No java, somos obrigados a iterar constantemente sobre colleções para fazer filtros, ou usar uma API de terceiros que faça algo similar. O LINQ ainda tem verificação do compilador, o que uma API no java não tem.
A API de Collections do Java, entretanto, é mais completa. Não só tem interfaces mais bem definidas, como também mais classes e melhores. Por exemplo, sinto falta de uma implementação de TreeSet no C#, ou de uma interface que seja pai de HashSet. Acho que a MS está pecou muito em não adicionar essa interface logo que o HashSet foi adicionado.
É difícil comparar ambas as APIs. As duas são gigantes e muito completas. Só posso adiantar que a MS está fazendo um ótimo trabalho com o C#, o que mostra que a companhia amadureceu muito. Uma grande vantagem do Java é que, por ser mais maduro, tem mais APIs de terceiros disponíveis.
Também é difícil falar em benchmarks. Linguagens virtualizadas já são difíceis de serem medidas por si só. O juliocbq, aqui do GUJ, fez um benchmark recentemente com operações matemáticas sobre inteiros nas duas linguagens, e o Java ganhou com larga margem (aliás, quase ganhou do C++ também). Mas, a menos que vc faça softwares para tratamento de imagens como o Julio, o gargalo dificilmente estará na linguagem. Portanto, acho que discussões desse tipo geralmente são inúteis. O que eu gosto de acrescentar é que no C# você tem mais controle sobre o garbage collector, o que pode facilitar o desenvolvimento de aplicações de tempo real.
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 13:42:15
|
UMC
GUJ Master
![[Avatar]](/images/avatar/1ec8093966ebb071c43adce47166569d.jpg)
Membro desde: 09/04/2009 14:03:36
Mensagens: 1685
Localização: Feira de Santana - BA
Offline
|
rogelgarcia wrote:O povo aqui.. briga até no offtopic.. ehheheh
Mas eu acho que os dois são concorrentes diretos..
O cenário onde os dois melhores se aplicam, são os mesmos..
A diferença principal que eu considero, é que .NET é mais forte na área de desktop do que java...
Mas eu prefiro Java 
hehehe
.NET = Microsoft.
Mais eu fico com JAVA
vlw
|
Compro o livro SCJP 6 Kathy Sierra, de preferência e português, quem tiver manda MP.!!!
umcaste.com
Graduando em Sistema de Informação.
espero ter ajudado...
falando nisso, caso seu problema tenha sido resolvido, edite o seu primeiro post e coloque um [RESOLVIDO] no titulo do tópico. (créditos maior_abandonado)
UMC-ASTEC -> Recomenda o NEXT!
O Next, é um framework para desenvolvimento de aplicações JEE. Baseado em Spring e Hibernate, tem como foco facilitar o trabalho do programador e dar produtividade ao desenvolvimento de aplicações web. Conta com diversos recursos que irão turbinar o desenvolvimento de suas aplicações.
(Créditos Rogel Garcia)
Download do NEXT
Quer aprender a programar com facilidade!?
Aqui
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 18:06:02
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Online
|
UMC wrote:.NET = Microsoft.
Não é muito melhor, nem muito mais errado, que dizer que Java = Oracle.
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2010 23:18:17
|
marcosalex
GUJ Expert
![[Avatar]](/images/avatar/0a8f8b227be2d04a675082cc9d51c127.jpg)
Membro desde: 20/02/2008 12:32:59
Mensagens: 3371
Offline
|
As ferramentas da MS pra .NET vêm com muito mais coisa pronta, enquanto a Sun vêm com o básico e deixa o resto pra terceiros, daí muita gente tem a impressão do .NET ser mais fácil. E alguns recursos que ele tem a mais são coisas que raramente você precisaria. Quantos aqui já usaram sobrecarga de operadores na prática?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/04/2010 02:20:35
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Online
|
marcosalex wrote:As ferramentas da MS pra .NET vêm com muito mais coisa pronta, enquanto a Sun vêm com o básico e deixa o resto pra terceiros, daí muita gente tem a impressão do .NET ser mais fácil. E alguns recursos que ele tem a mais são coisas que raramente você precisaria. Quantos aqui já usaram sobrecarga de operadores na prática?
De que "mais coisa pronta" você está falando? Acho que em termos de ferramentas, o Java ainda dá de 10 a 0 no C#. O Netbeans é uma IDE muito melhor que o visual, sem falar nas ferramentas de profiling, trazidas pela própria Visual VM. Precisei usar um profiler no C# achei apenas o DotTrace, que não é da MS, e é caríssimo (talvez venha algo assim no Visual 2010). Ok, a parte de janelas e web do Visual é bem completinha, mas não achei muito melhor que a do Netbeans. Extension methods são muitíssimo úteis. Uma implementação real de generics também. O LinQ é simplesmente sensacional e não há nenhuma implementação de terceiros que faça o que ele faz, justamente por ele ser suportado pelo compilador e não só por uma biblioteca. Você tem verificação das linq queries em compile time, da maneira mais segura possível. Nunca entendi o conservadorismo da sun quanto à sobrecarga de operadores. Alguns locais simples ela já seria útil, no próprio Java, e aposto que muitos usariam na prática. Que tal concatenar Strings num StringBuilder através do sinal de +, no lugar de chamar .append? Ou de ter a classe BigDecimal e BigInteger suportando operadores matemáticos, ao invés de métodos? Que tal ter a classe List e Map usando o operador de [] ao invés de métodos como get, put e set? Veja, no C# é assim que se usa um map: Vemos exemplos dessas classes praticamente todos os dias aqui no GUJ. A sintaxe delas já seria muito simplificada pela possibilidade de sobrecarga de operadores. Especialmente no caso das classes matemáticas, onde expressões numéricas são muito mais facilmente descritas. Suponha que x e y são BigDecimals, vamos comparar sintaxes? A alegação é que operadores mal usados podem deixar o código difícil de manter. Acho que essa alegação pode ser usada para praticamente qualquer recurso e para mim soa como uma desculpa para lá de esfarrapada. Como vc poderá perceber por expressões como aquela acima, sem sobrecarga é que temos um código rebuscado e mais difícil de manter. Aliás, se sobrecarga é assim tão inútil, pq a Sun xunxou a classe String desde o início do Java para tê-la?
This message was edited 7 times. Last update was at 21/12/2010 22:16:22
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/04/2010 12:01:12
|
Leozin
JWizard
![[Avatar]](/images/avatar/5dca4c6b9e244d24a30b4c45601d9720.png)
Membro desde: 18/06/2005 21:01:26
Mensagens: 2310
Localização: São Paulo/SP
Offline
|
Muito bom o teu post vini, parabéns.
Eu já trabalhei muito no .NET e agora voltei (pra fazer uma migração de um sistema Java pra vb.NET). No que eu fui lidar com ele, precisei de umas bibliotecas por fora e para a minha surpresa: muitas APIs são pagas.
Em 2006 quando eu precisei de algo pra SMTP, o que funcionava era pago. O free não funcionava. Esse mês fui procurar uma ferramenta pra testes de cobertura, e é BEM caro (200 dolares) e assim vai indo.
Mas a linguagem é legal, eu só não curto o visual studio como editor de código. Para WYSIWYG eu acho que atende bem, mas se tu tiver que botar a mão no código:
- Refactoring é muito pobre
- Navegação entre métodos é ruim também
- Quando rola exception, as linhas não aparecem no stacktrace
- a forma de organização de packages
- entre outros que não lembro mais
A minha única crítica é a ferramenta e APIs pagas, porque a linguagém em sí é muito boa
|
http://www.leozin.com.br/blog |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/04/2010 13:52:35
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Online
|
Leozin wrote:Muito bom o teu post vini, parabéns. Eu já trabalhei muito no .NET e agora voltei (pra fazer uma migração de um sistema Java pra vb.NET). No que eu fui lidar com ele, precisei de umas bibliotecas por fora e para a minha surpresa: muitas APIs são pagas. Em 2006 quando eu precisei de algo pra SMTP, o que funcionava era pago. O free não funcionava. Esse mês fui procurar uma ferramenta pra testes de cobertura, e é BEM caro (200 dolares) e assim vai indo. Mas a linguagem é legal, eu só não curto o visual studio como editor de código. Para WYSIWYG eu acho que atende bem, mas se tu tiver que botar a mão no código: - Refactoring é muito pobre - Navegação entre métodos é ruim também - Quando rola exception, as linhas não aparecem no stacktrace - a forma de organização de packages - entre outros que não lembro mais A minha única crítica é a ferramenta e APIs pagas, porque a linguagém em sí é muito boa 
Concordo. Todos os dias que uso o Visual, sinto muita falta do Eclipse. E olha que já estou trabalhando a praticamente 1 ano, tempo suficiente para descobrir macetes e recursos. Sinto falta exatamente do que você falou. Outra coisa que sinto falta é a MS não ter sugerido uma code convention oficial para o C#. O pessoal até copia o estilo da API, mas não há nenhum documento oficial, como a Sun tem para o Java. Ah sim, outra coisa legal do .net, que nunca entendi pq a Sun não incorporou esse recurso nos seus .jar também, é a possibilidade do arquivo de manifesto descrever coisas como: - Nome da biblioteca; - Descrição; - Versão. A última informação, claro, é a mais importante. No .net você pode checar em runtime se a dll que você está usando está ou não na versão correta, ou na versão mínima. O que é muito útil se você depende de pacotes externos. Você também pode obter essa informação via reflexão, o que te permite fazer uma página, por exemplo, que liste todas as versões dos assemblies instalados para sua aplicação no servidor. Informação valiosa para diagnostico de erros e debug. De maneira geral, ainda sou mais satisfeito com o Java, principalmente por causa da API da Sun. A do C# é ótima também, mas tem muita coisa que sinto como se estivesse faltando, ou como se a implementação não tivesse sido tão bem pensada. Muitas vezes notei que a API do .Net é pouco extensível, coisa que sabemos que a do Java não é.
This message was edited 1 time. Last update was at 18/04/2010 13:58:10
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
|
|