Velha rixa

29 respostas
L

Ae…olha o que um carinha escreveu pro grupo de discussão lá da faculdade…

Vamos falar sem fanatismo J

Vamos ver o lado prático.

A menos que o parket que vc. possua S.O. Windows e Linux não recomendo Java

(conheço Java e temos aqui pessoal com mestrado em Java que estão utilizando .Net – C#)

alguns pontos a verficar:

  • Produtividade

  • Curva de aprendizado, facilidade de uso (é só comparar construir WebService nas duas plataformasJ )

  • No mesmo projeto pode-se utilizar diferentes linguagens C#, Vb.Net, Delphi.Net etc.

  • Maior facilidade na depuração principalmente por não existir esta torre de babel em produtos(configurar tudo isso para trabalhar junto não é fácil).

  • Aplicações Web e Windows(não se compara o WinForm com Swing).

  • Não está centrado em uma só linguagem, mas na plataforma.

  • Várias universidades estão adotando na sua grade curricular.

Etc, etc.

Mas enfim, uns gostam de MPB outros de Rock e muitos outros de Pagode. E todos eles são felizes(ou acham).

Sou novo em Java…mas sei que é muito melhor que essa droga de .NET ai , o que eu deveria responder para esse cara?

Valews

29 Respostas

louds

Produtividade é uma métrica perigosa, se vc pegar 1 sistema web e usar 1 bem simples páginas/homem/hora, provavelmente asp.net vai ser mais produtivo. Mas se voce usar uma métrica mais realista ciclo-de-desenvolvimento/homem/hora (por cdd entenda codificar, testar e dar manutenção) java ganha facil de .net, o TCO do java é bem menor a medio/longo prazo.

Bom, se vc for fazer com notepad e apenas notepad, .net é melhor. Mas com uma boa IDE da na mesma. Em java vc escreve 1 POJO + uns wizard e teu webservice já tá em produção.

Essa é a parte mais engraçada do argumento, pq é um fenomeno não esperado. Mas java tem bem mais linguagens disponiveis que .net:
java, nice, groovy, bean shell, javascript, python, scheme, etc.

Não tem vb nem delphi, isso é uma vantagem.

Mito. O debuger do eclipse é muito bom. O novo debugger do IDEA é incrivel. Mas isso é perda de tempo. Depurar não agrega valor algum ao produto.

Qual das duas plataformas tem melhor suporte a unit testing? É mais facil fazer unit testing de uma página asp.net ou uma action do struts ou do webwork?

Ok, não da para comparar. Aplicações desktop sempre são um inferno de manutenção pq sempre que sai 1 versão nova tem que avisar os 10000x usuarios para atualizar a copia na estação deles.
Em java esse problema não existe, tem JWS.

Aplicações web? Asp.net é uma bomba rumo a detonação.

http://www.developersdex.com/gurus/articles/723.asp

.net é uma estratégia de marketing, java é um mercado. Java voce tem APIs padronizadas e mantidas por uma organização razoavelmente aberta a comunidade, o JCP. No .net voce esta a merce do fornecedor e tem que usar em quase todos os casos APIs proprietarias.

Sim, existem cursos de PD e Sistemas da Informação por todo mundo, aqueles que formam “code monkeys”, devem ter trocado as classes de vb, delphi ou cobol por C#.

Acho que bastam poucos argumentos para mostrar como .net é mais uma tecnologia que a MS vai aposentar em 3-4 anos pq deu errado, de novo, e java é o futuro.

-Muitos vendedores, IBM, SUN, Oracle, HP, BEA, Novell.

-Soluções J2EE não só funcionam entre fornecedores mas também entre versões da especificação. Que desenvolvedor .net não perdeu 1 tufo de cabelo com a versão 1.1??

-Desenvolvedores contentes, esquece todos os outros argumentos acima. Verifica qual o grau de satisfação dos desenvolvedores java contra os de .net. J2EE tem algumas coisas feias, mas existem alternativas viaveis. .NET tem tantas coisas horrivelmente mal feitas, só procurar um pouco que voce acha gente reclamando de tudo.

Uma coisa curiosa é que muita gente do “mundo ms” ve problemas com java por ter muitas escolhas para quase tudo, é tão ruim assim ter opção em vez de ter tudo imposto pelo único vendedor?

louds

Mas se voce precisar de mais argumentos

sugiro

http://www.manageability.org/manageabilityWiki/WhyJavaIsBetterThanDotNet

black_fire

Acho que realmente este é o único problema, todos pensam em java como uma linguagem altamente complexa…
Porém se vc utilizar uma boa IDE, como o louds falou, as coisas mudam de figura.
O povo tem que colocar na cabeça que desenvolver no notepad é um diferencial da linguagem, uma coisa para um ajuste rápido, mas não se esqueçam que vc uma porrada de opções desde as free até as proprietárias… Vi uma solução no Sun Tech Days, pena que não lembro qual, que tinha uma ide integrada com o Struts, que com meia dúzia de cliques vc tinha uma aplicação web e MVC…

Agora, será que é possível com notNet estar no cliente, abrir o código com o notepad corrigir o problema e compilar sem a necessidade de uma IDE?

Em relação a produtividade, hoje eu desenvolvo uma aplicação swing (OO) na mesma velocidade que eu desenvolveira as mesma aplicação em Delphi(OO), digo OO, pq fazer procedural é baba, mas dá pra fazer porcaria em java tbm…

Neste ponto tenho que concordar, afinal na faculdade os cara aprendem C#, delphi, VB, Java, PHP, Oracle, SQL Server, blá, blá, blá…

Isso não é diferencial nenhum, ruim seria se as faculdades não incluissem o .not no meio das cinquenta mil linguagens que vc aprende no curso…

falow…
:wink:

F

“black_fire”:
Vi uma solução no Sun Tech Days, pena que não lembro qual, que tinha uma ide integrada com o Struts, que com meia dúzia de cliques vc tinha uma aplicação web e MVC…

Não era o JDeveloper?

:?:

jc_oz

:shock: Pow!!! Não sabia que a coisa estava nesse pé!!! :twisted:

Mas, só uma questão que fiquei com dúvida:

Isso não acontece em Java tb??? Bem, pelo que eu saiba, as senha do TomCat, por exemplo, ficam armazenadas num arquivo sem nenhuma criptografia ou coisa do tipo, não seria a mesma situação ou problema?

cv1

Discutir produtividade de linguagens eh algo completamente idiota. Serio, nao entrem nessa discussao. Chegar num consenso, ou numa resposta universal sobre qual a linguagem/plataforma mais produtiva eh como tentar atirar num alvo movel a 2km de distancia com uma arma descalibrada e bala pipocando: se vc acertar alguma coisa, nao vai ser o alvo :wink:

L

Valeu galera pelos esclarecimentos…eu já tava começando a achar que a minha escolha por Java tinha sido não muito correta…

Mandei tudo de volta pro forum da faculdade…só espero que vcs não me exijam os direitos autorais…heheheh

:lol:

Rodrigo_Carvalho_Aul

Não era o Rave não, né? Pq se for não vi nada de MVC, vi um monte de código misturado sem separação em camadas nenhuma… não lembro se era integrado com o Struts.

[]'s

black_fire

Ocorre sim, porém, como quase tudo em java é OpenSource, vc entra no código, cria a sua criptografica, altera o font, e tem um versão criptografada… Não é muito prático, mas como vc pode ver, se vc quiser vc faz…

:arrow: Um outro ponto é:
Veja que o Tomcat é apenas mais um dentre vários outros, enquanto que as soluções micro$oft é ele, e vamos aguardar um novo path…

Relação a aplicação que citei no post anterior acho que é o JDeveloper mesmo.

Um abraço galera…
:wink:

dudaskank

aiaiai

achei que nesse forum eu não veria coisas do tipo A x B… mas fazer o que, somos humanos!

Bom, se você puder, aprenda as duas… o que vale mesmo é a lógica, o jeito de fazer, e não se foi feito em Java, .Net, Delphi, C, Assembly, se você entrou com as instruções da máquina diretamente…

Aliás, não sei o que vocês tanto tem contra o Delphi… se o programa é orientado a objeto ou não no Delphi, o problema é com o programador, e não com a linguagem… C++ pode ocorrer a mesma coisa, e como foi dito no Java também.

No meu caso, a grande vantagem de Java sobre .net (que eu nunca mexi pra falar a verdade) é o preço, que eu pago o mesmo pelo meu compilador C/C++ (o Mingw do gcc)… e também tem umas ide’s grátis muito boas, com code completion e outras cositas…

Bom… é isso… e estou com saudades dos meus ponteiros.

:stuck_out_tongue:

:slight_smile:

maresp

“jc_oz”:

Isso não acontece em Java tb??? Bem, pelo que eu saiba, as senha do TomCat, por exemplo, ficam armazenadas num arquivo sem nenhuma criptografia ou coisa do tipo, não seria a mesma situação ou problema?

O arquivo que vc está se referindo é o TOMCAT_HOME/conf/tomcat-users.xml. Essa é configuração mais básica (MemoryRealm), porém vc pode substituir por JDBCRealm, DataSourceRealm ou JNDIRealm com acesso via uma base ldap. Utilize o algoritmo MD5 para criptografar suas senhas. Problema resolvido…

NÃO! Estamos falando de tomcat, um produto que obece a especificação de um servlet container, e não da tecnologia java.

Armitage

Ahhhh a velha “guerra” de sempre… JAVA x .Net

Só tenho uma coisa a dizer… nossos servidores nunca mais apresentaram problemas desde que todas as aplicações (refiro-me as da minha area) mudaram para JAVA e os servidores para AIX ;õ)

Afe! Esqueci de um detalhe importante… mudamos de plataforma sem muita dor de cabeça exatamente porque TODAS aplicações já tinham sido migradas para java… um dia rodavam em um windows 2000 server no outro no AIX sem alterar uma unica linha de código

black_fire

Isso é java.
Estou desenvolvendo minhas aplições em um 2K server para teste e em produção tá rodando Free-BSD…
Crio as aplicações, jogo na produção e como a armitage disse… Td continua como estava na minha máquina…

Acho que esse é um dos maiores diferenciais do Java…
Mandou bem Armitage… :wink:

Um abraço para tods…

Daniel_Quirino_Olive

“lestat25sp”:

alguns pontos a verficar:

  • Produtividade

  • Curva de aprendizado, facilidade de uso (é só comparar construir WebService nas duas plataformasJ )

  • No mesmo projeto pode-se utilizar diferentes linguagens C#, Vb.Net, Delphi.Net etc.

  • Maior facilidade na depuração principalmente por não existir esta torre de babel em produtos(configurar tudo isso para trabalhar junto não é fácil).

  • Aplicações Web e Windows(não se compara o WinForm com Swing).

  • Não está centrado em uma só linguagem, mas na plataforma.

  • Várias universidades estão adotando na sua grade curricular.

Etc, etc.

Mas enfim, uns gostam de MPB outros de Rock e muitos outros de Pagode. E todos eles são felizes(ou acham).

Sou novo em Java…mas sei que é muito melhor que essa droga de .NET ai , o que eu deveria responder para esse cara?

Valews

:arrow: Produtividade: eu nunca consegui ter a mesma eficiência com o VS.NET do que eu tenho com o JBuilder ou com o Eclipse. Aliás, sempre costumo mostrar esta URL (no meu blog): http://jroller.net/page/danielqo/20031017#java_vs_net_debate_from

:arrow: Curva de aprendizado: quer coisa mais fácil do que, no JBuilder, clicar sobre uma classe e selecionar “export as web service”? Sem precisar usar flags do tipo [Webmethod] pelo código.

:arrow: Múltiplas linguagens: além de java também suportar diversas linguagens, não acho que isso seja uma vantagem. Misturar C#, VB.NOT e managed C++ ajuda a tornar o projeto uma bagunça MUITO grande.

:arrow: Depuração: o debugger do Eclipse e do JBuilder não costumam travar aparentemente do nada, como o do VS.NET :wink: . Além do mais, não vejo nenhuma dificuldade em configurar, por exemplo, uma IDE qualquer para trabalhar com o JBoss e depois reconfigurá-la para brincar com o Websphere. Isso, para mim, soa como comentário de quem não tem nenhuma opção de deploy.

:arrow: Aplicações WEB: J2EE
:arrow: Aplicações Desktop: Swing, SWT/JFace… qual você quer usar? Ahhhh, além disso, a minha aplicações Swing não vai virar legado daqui 1 ano, quando a Microsoft resolver lançar o longhorn e toda aquela monte de fireworks que são Avalon (framework para GUI, aka, “adieu WinForms”), Indigo (framework de comunicação) e WinFS (framework de arquivamento) :wink: .

:arrow: Centrado na plataforma: e…???

:arrow: Adoção nas universidade: não sei qual universidade você estuda, mas aqui na USP, .NET está longe de ser aceita na grade curricular, apesar das parcerias que a universidade tem com a aquela lá de Redmond.

_fs

Bem, minha humildérrima adição a este tópico, quando alguém falar que java só serve pra web swing é lento, diga duas coisas:

  1. “RAM é barato querido”
    e
  2. SWT é uma ótima alternativa para swing e é satisfatoriamente rápido para o cara que quer um sistema mas não tem grana para comprar um pente de 128 de ram …
dsiviotti

Antes de entrar na comparação em si deveríamos analisar a sentança acima. Decifrando…

Se você só vai usar Windows???

Quem tem certeza que sempre vai usar só windows? Nem a Microsoft usa só Windows. Isso é uma afirmação que quase nenhuma empresa pode (ou seria estúpida de) fazer.
Apenas isto basta para responder os caras que escreveram esse texto. Realmente ficar comparando Java e .Net não vai chegar a lugar algum.

dudaskank

Só pra informação, .Net também roda em Linux.

Tem um pessoal aí fazendo o porte… e dizem que roda legal.

:slight_smile:

V

“dudaskank”:
.Net também roda em Linux.
Tem um pessoal aí fazendo o porte… e dizem que roda legal.

Desculpem a minha ignorancia, mas porque diabos alguém iria querer rodar .Net em linux?? E ainda por cima rodar com algumas limitações??

Se o intuito é fazer um sistema multiplataforma, faça em java.

F

“Daniel Quirino Oliveira”:
:arrow: Múltiplas linguagens: além de java também suportar diversas linguagens, não acho que isso seja uma vantagem. Misturar C#, VB.NOT e managed C++ ajuda a tornar o projeto uma bagunça MUITO grande.

Essa historia de multiplas linguagens não é bem assim…aqui na empresa decidiram em fazer um projeto em .net, perguntaram se eu queria fazer parte da equipe. Eu disse sem problemas mas vou usar J# sabe o que me falaram, não da pq o projeto vai ser em C#…ai eu perguntei mas não da pra usar varias linguagens…o cara do .net disse da desde que tu escolha a linguagem do projeto no incio, integrar elas da pra fazer, mas ai fica gambiarra…

:roll:

louds

“fabgp2001”:
Essa historia de multiplas linguagens não é bem assim…aqui na empresa decidiram em fazer um projeto em .net, perguntaram se eu queria fazer parte da equipe. Eu disse sem problemas mas vou usar J# sabe o que me falaram, não da pq o projeto vai ser em C#…ai eu perguntei mas não da pra usar varias linguagens…o cara do .net disse da desde que tu escolha a linguagem do projeto no incio, integrar elas da pra fazer, mas ai fica gambiarra…

:roll:

Digasse de passagem a gambiarra enorme que fizeram para suportar herança múltipla do Eiffel.

J

Acabei de receber o link abaixo… A pessoa que me enviou, escreveu: “O link abaixo apresenta uma pesquisa comparativa muito séria e fundamentada.”. Será?

http://www.netreverie.com/DotNet/J2EE_vs_.NET-An_Executive_Look.asp


Álvaro Vieira.

cv1

Nao existe pesquisa comparativa seria e fundamentada quando o assunto eh Java versus .NET, assim como nao existe pesquisa comparativa seria e fundamentada quando o assunto eh futebol. :smiley:

caiofilipini

Ótimo argumento, cv! :wink:

Aliás, também não existe pesquisa comparativa séria e fundamentada quando o assunto é Beatles, mas deixa isso pra lá… :lol:

dudaskank

Quem sabe para ter uma opção a mais de SO? Para não ter que comprar um monte de windows?

:slight_smile:

Ironlynx

JonhyBoy,
Nada tendencioso esse link hein…não vou nem comentar o conteúdo,mas olha as certificações do autor(Sameh Younis):
MCSE, MCDBA, MCSD, .NET MCAD, .NET MCSD.

Sabe muito de .NOT e (Quase)nada de Java!!! :evil:

J

Pois é, mas o pior é que os .net-maniacos que lêem esse lixo, acham que estão usando a melhor ferramenta do mundo :smiley:


Álvaro Vieira

M

Nao posso responder sobre os outros pontos mas posso sobre o ultimo!
Estudo nos Estados Unidos e alem da minha universidade, a grande maioria esta optando por java! Talvez porque seja “a linguagem em alta” agora ou porque é gratis!
Mas mesmo assim, pelo menos em quase todos cursos de IT e CS que eu vi por aqui sao em java.

Rodrigo_Carvalho_Aul

“dudaskank”:
Só pra informação, .Net também roda em Linux.

Tem um pessoal aí fazendo o porte… e dizem que roda legal.

^__^

Rodar legal não roda e duvido que um dia irá rodar. Se até hoje as “versões” de ASP pra Linux não funciona direito, imagina do .Net que é muito maior e complexo…

[]'s

louds

“Rodrigo Carvalho Auler”:
“dudaskank”:
Só pra informação, .Net também roda em Linux.

Tem um pessoal aí fazendo o porte… e dizem que roda legal.

^__^

Rodar legal não roda e duvido que um dia irá rodar. Se até hoje as “versões” de ASP pra Linux não funciona direito, imagina do .Net que é muito maior e complexo…

[]'s

Segundo a netcraft 1-3% dos deployments de asp.net no ar hoje usam linux com mono e apache!!!

Criado 5 de fevereiro de 2004
Ultima resposta 9 de fev. de 2004
Respostas 29
Participantes 18