Galera, faz uns 2 meses que estou estudando para certificação java. No entanto tenho lido bastante sobre dot net e seus benefícios, que nada mais é que uma cópia da idéia do java de ter uma plataforma para rodar em qualquer sistema, no entanto a plataforma dot net suporta mais de 20 linguagens de programação, inclusive java. Minha dúvida está se o tal dot net não vai atropelar java. O que vc acham sobre isso ??
O Dot Net está preso à plataforma Microsoft, o Java, pelo contrário é independente de plataforma. Uma diferença entre Dot Net e Java, se dá ao fato de o Dot Net ser multi linguagem. Já o Java é multi-plataforma.
T
tnaires
E hoje em dia a plataforma Java já dá suporte a várias outras linguagens, como Ruby, Python e Scala.
L
louds
Márcio, Código escrito em C# roda em mais plataformas que Java. Veja o JDK da Sun, roda em windows, linux e solaris. X86, AMD64 e sparc.
O mono funciona em windows, linux, solaris, OSX e freebsd. Arquiteturas, X86, AMD64, sparc, itanium, arm, s390, s390x, ppc e tem ports da comunidade para alpha e mips.
Mono hoje já funciona no IPhone e tem bindings para as bibliotecas específicas do dispositivo -como aquelas que envolvem multit-touch. Java para IPhone ainda é vaporware.
P
pcalcado
Cópia da idéia do Java? Linguagens que rodam em mais de uma plataforma usando uma VM existiam décadas antes de Java.
F
fenemeth
Bem pessoal, continuarei meus estudos em java, mas sempre com os olhos abertos para novas tecnologias. Grande abraço a todos.
D
DaviPiala
fenemeth:
Galera, faz uns 2 meses que estou estudando para certificação java. No entanto tenho lido bastante sobre dot net e seus benefícios, que nada mais é que uma cópia da idéia do java de ter uma plataforma para rodar em qualquer sistema, no entanto a plataforma dot net suporta mais de 20 linguagens de programação, inclusive java. Minha dúvida está se o tal dot net não vai atropelar java. O que vc acham sobre isso ??
Grande abraço.
Na última revista da mundo Java tinha um artigo interessante sobre esse assunto do Cezar Taurion da IBM.
Vale a pena vc ler.
Eu acredito que haja espaço tanto para .net como para Java.
V
ViniGodoy
Mas há uma diferença aí… É a Sun que está por tras dessas várias plataformas do Java.
Não é a Microsoft que está por trás do projeto mono e sim a Novell. (isso seria positivo?) http://www.mono-project.com/FAQ:_General#Mono_and_Microsoft
Até por isso, o Mono está sempre algumas versões atrás da última release do .net framework.
S
sergiotaborda
Só uma nota, o .net suporta J# e não java. embora a sintaxe seja a mesma não é Java.
(C# tb tem a mesma sintaxe e não é a mesma coisa)
T
thingol
A versão atual do Visual Studio (2008) não vem mais com o J#.
Esse software foi criado na Índia (com o nome código “Banjara”) para atender aos seguintes requisitos:
Dar motivação aos gerentes, diretores etc. para portarem seus sistemas de J2EE para .NET (teoricamente isso, mais um wizard criado pela Microsoft, iria facilitar a migração - é claro que isso foi só uma promessa. O tal wizard existe, mas na prática você ainda tem de fazer muito trabalho braçal. Lembram-se do wizard para converter código VB 6.0 para VB.NET? É algo semelhante.);
Atender aos currículos de diversas faculdades, que requerem o uso do Java em seus currículos. É por isso que embora não seja compatível com o Java 1.2 ou posterior, o J# contém suficientes classes de java.util para que possa atender ao currículo mínimo. Em particular, o J# tem as classes da Java Collections Framework e também as classes do namespace System.Collections.
L
louds
O mono tem uma comunidade ativa de empresas e pessoas muito maior que a Sun com o OpenJDK.
Apesar da Novell ainda ser a maior patrocinadora do projeto não é como no caso da MS ou Sun em que
quase 100% é feito em casa a portas fechadas.
Mono permite uma significativa quantidade de aplicações .NET sem nenhuma alteração. Se isso não conta como .NET,
as VMs de outros fornecedores que não a Sun também não contam, pois elas também tem seus bugs.
Algumas versões? Em que ano você está? 2003? 2004?
Já fazem muitos releases que o mono suportar o .net 2.0, apesar de não estar completo. O maior problema sempre foi
o WinForms, que é uma API colossal; para desenvolver aplicações Gtk# ou ASP.NET já faz tempo que o 2.0 funciona.
A algumas semanas completaram a API do WinForms, que era o último impeditivo para suportarmos o 2.0 por completo.
Quanto ao 3.0 e o 3.5 a história é um pouco diferente. O 3.5 está em estágio avançado de desenvolvimento. O compilador
já suporta quase que LINQ por completo faltando apenas partes relativas a Expression Trees. As bibliotecas estão em pleno
desenvolvimento.
Em relação ao 3.0, um pacote de assemblies que podem ser usados a parte, estão em andamento, mas não com o
mesmo empenho do resto. Principalmente pq boa parte deles ter uma base de usuários muito pequena ainda. A única que
deslanchou mesmo foi a WCF, que é a única que realmente temos usuários pedindo.
W
windsofhell
E hoje em dia a plataforma Java já dá suporte a várias outras linguagens, como Ruby, Python e Scala.
IronPython = .NET + python
E ja ate ouvi falar de Ruby e .NET tb
//Daniel
C
Claudio_Nazzari
Cara, “atropelar o java” pode ter certeza que nao vai. Tanto é verdade que existe milhares de sistemas prontos feitos em java… quem vai dar manutenção neles…
Pensa assim, niguem conseguiu “Atropelar” o COBOL ainda, uhaeuhaeuhaue !!
P
pcalcado
ViniGodoy:
Mas há uma diferença aí… É a Sun que está por tras dessas várias plataformas do Java.
Não é a Microsoft que está por trás do projeto mono e sim a Novell. (isso seria positivo?) http://www.mono-project.com/FAQ:_General#Mono_and_Microsoft
Até por isso, o Mono está sempre algumas versões atrás da última release do .net framework.
A Sun não está atrás das plataformas, ela suporta algumas delas fazendo coisas como contratar profissionais envolidos. De qualquer forma isso não é um problema porque assim como o Mono não é a Sun ou IBM ou aluém que mantêm essas iniciativas e sim comunidade.
V
ViniGodoy
louds:
Já fazem muitos releases que o mono suportar o .net 2.0, apesar de não estar completo. O maior problema sempre foi
o WinForms, que é uma API colossal; para desenvolver aplicações Gtk# ou ASP.NET já faz tempo que o 2.0 funciona.
A algumas semanas completaram a API do WinForms, que era o último impeditivo para suportarmos o 2.0 por completo.
Quanto ao 3.0 e o 3.5 a história é um pouco diferente. O 3.5 está em estágio avançado de desenvolvimento. O compilador
já suporta quase que LINQ por completo faltando apenas partes relativas a Expression Trees. As bibliotecas estão em pleno
desenvolvimento.
Em relação ao 3.0, um pacote de assemblies que podem ser usados a parte, estão em andamento, mas não com o
mesmo empenho do resto. Principalmente pq boa parte deles ter uma base de usuários muito pequena ainda. A única que
deslanchou mesmo foi a WCF, que é a única que realmente temos usuários pedindo.
Não, não estou em 2004, e não precisava ser rude. Aliás, o que você falou até confirma o que eu disse: Ele está, sim, algumas versões atrás. A versão atual não é a 2.0, mas a 3.5.
E, como você mesmo disse, a 2.0 não está completa, porque falta uma API. Colossal ou não, ela é usada no desenvolvimento .net e não está no mono.
Citando suas próprias frases:
“Já fazem muitos releases que o mono suporta o .net 2.0, apesar de não estar completo.”
“Quanto ao 3.0 e o 3.5 a história é um pouco diferente. O 3.5 está em estágio avançado de desenvolvimento.”
V
ViniGodoy
Acho que há uma grande diferença quando a Sun usa o seu nome, e disponibiliza o produto em seu próprio site. Ela apoia a comunidade, fomenta isso. Muito diferente da MS, que apoiou o mono um pouco a contra gosto.
Não estou criticando a iniciativa mono, mas a postura da MS. Ela deveria era começar a dar um apoio mais direto, e mais intenso, como a própria sun faz.
P
pcalcado
Meu argumento continua o mesmo, Vini: se Java fosse uma plataforma cujo ecossistema é controlado pela Sun esse argumento faria sentido mas não é. Quem faz java são os JBoss, Apache e SpringSource da vida, a Sun (e o JCP por extensão) apenas corre atrás.
L
louds
Ter toda API implementada tem pouco valor. Oque importa é ter aquilo que 90% usa, que já tem a muitos releases. Como te falei, o mono já tem isso a muitos releases.
Assim como o último release do Java é o 6 e pouquíssimas empresas migraram, tem mais gente no .net 1.1 que usando algo 3.X.
F
fenemeth
DaviPiala:
fenemeth:
Galera, faz uns 2 meses que estou estudando para certificação java. No entanto tenho lido bastante sobre dot net e seus benefícios, que nada mais é que uma cópia da idéia do java de ter uma plataforma para rodar em qualquer sistema, no entanto a plataforma dot net suporta mais de 20 linguagens de programação, inclusive java. Minha dúvida está se o tal dot net não vai atropelar java. O que vc acham sobre isso ??
Grande abraço.
Na última revista da mundo Java tinha um artigo interessante sobre esse assunto do Cezar Taurion da IBM.
Vale a pena vc ler.
Eu acredito que haja espaço tanto para .net como para Java.
Ehh kra, o jeito eh eu assinar alguma revista do gênero para me manter informado sobre assuntos como esse…
Grande abraço, vlw pela dica.
F
fenemeth
Cara, “atropelar o java” pode ter certeza que nao vai. Tanto é verdade que existe milhares de sistemas prontos feitos em java… quem vai dar manutenção neles…
Pensa assim, niguem conseguiu “Atropelar” o COBOL ainda, uhaeuhaeuhaue !!
Hum ta certo kra…Mas assim, queria estudar a tecnologia que irá evoluir, não a que ficará para dar manutençaõ. Mas como tecnologia eh coisa de loco, cada hora vai surgindo uma nova, fica difícil saber. Bem, deixo continuar com a kathy, grande abraço, vlww.
F
fenemeth
Galera, tava dando uma lida sobre mono, nome que até então nunca tinha ouvido falar, ainda não consegui construir uma idéia do que ele é exatamente…To com uma idéia aqui comigo, mas eh bem vaga, alguém saberia me explicar oque ele vem a ser ?
grande abraço, vlw.
N
nbluis
A grosso modo, implementação de .NET multiplataforma.
N
netShot
fenemeth:
Galera, tava dando uma lida sobre mono, nome que até então nunca tinha ouvido falar, ainda não consegui construir uma idéia do que ele é exatamente…To com uma idéia aqui comigo, mas eh bem vaga, alguém saberia me explicar oque ele vem a ser ?
Puts griles, até então eu achava que .NET já fosse multiplataforma…Ahh tudo bem, até umas 2 semanas eu não conhecia o conceito de .NET rsrs…Estou aprendendo bastante com a galera…
grande abraço, vlw.
X
xandroalmeida
90% != 100%
Enquanto o Mono não tiver 100% de pelo menos da penúltima release oficial (MS), não da para ser levado a sério.
C
Claudio_Nazzari
Cara, “atropelar o java” pode ter certeza que nao vai. Tanto é verdade que existe milhares de sistemas prontos feitos em java… quem vai dar manutenção neles…
Pensa assim, niguem conseguiu “Atropelar” o COBOL ainda, uhaeuhaeuhaue !!
Hum ta certo kra…Mas assim, queria estudar a tecnologia que irá evoluir, não a que ficará para dar manutençaõ. Mas como tecnologia eh coisa de loco, cada hora vai surgindo uma nova, fica difícil saber. Bem, deixo continuar com a kathy, grande abraço, vlww.
Cara, pode ter certeza que tanto o Java quando o .NET irão evoluir muito ! E realmente é muito dificil dizer que .NET vai “Dominar”, pq existem muitas linguagens no mercado.
As linguagens que mais estao na moda hoje em dia são Java e .NET, entao se voce for optar por uma linguagem, escolha uma dessas duas…
Tem o Ruby tambem que esta crescendo muito, caso voce goste de desafios hehehe !
Abraco
K
kirkgo
xandroalmeida:
louds:
Ter toda API implementada tem pouco valor. Oque importa é ter aquilo que 90% usa, que já tem a muitos releases. Como te falei, o mono já tem isso a muitos releases.
Assim como o último release do Java é o 6 e pouquíssimas empresas migraram, tem mais gente no .net 1.1 que usando algo 3.X.
90% != 100%
Enquanto o Mono não tiver 100% de pelo menos da penúltima release oficial (MS), não da para ser levado a sério.
Calma la Louds (mono evangelist)… algumas empresas e pessoas tem problemas em utilizar algo que não esta completo (leia-se estável). Eu mesmo fico com receio. Eu particularmente já tive contato com muitos projetos em Java e .NET, mas tirando você, nunca nem ouvi falar de alguém que tivesse usado mono aqui no Brasil para algum projeto profissional em produção. Você diz que diversas empresas apoiam o mono e que a novel é o maior patrocinador… tirando a novel, quais empresas apoiam o mono de verdade?
Não estou falando que o mono é ruim, mas acho que você esta superestimando o projeto.
R
rafagil
Na minha opinião, o mono só era uma boa idéia enquanto o Java não era OpenSource, pois não tinhamos nenhuma ferramenta à altura do .NET opensource. Mas agora com o Java aberto, creio que seria melhor unir esforços e melhorar o Java ainda mais, pois não fica devendo nada ao .NET.
Acho que nenhum projeto (opensource ou não) vai pra frente tentando copiar um outro de sucesso. Quer exemplo? O Ubuntu linux é a distro mais famosa e utilizada no mundo inteiro porque simplesmente não tenta copiar o Windows.
Claro, não tenho nada contra o mono, mas só acho que nunca vai chegar perto de ser uma alternativa viável (opensource) ao .NET da microsoft, e se iso não acontecer, como já foi dito, nunca será levado à sério.
Não acredita? Pode perguntar para qualquer desenvolvedor .NET se ele trocaria sua querida plataforma totalmente integrada com o Visual Studio 2008 + Windows pelo Mono + MonoDevelop. 90% deles vão rir da sua cara (infelizmente).
P
pcalcado
rafagil:
Na minha opinião, o mono só era uma boa idéia enquanto o Java não era OpenSource, pois não tinhamos nenhuma ferramenta à altura do .NET opensource. Mas agora com o Java aberto, creio que seria melhor unir esforços e melhorar o Java ainda mais, pois não fica devendo nada ao .NET.
Fica, uma VM multilinguagem sem gambiarras.
E qual desenvolvedor Java code monkey troca seu netbeans + ejb + jsf por outra solução? Isso não az das alternativas melhores ou piores.
R
rafagil
pcalcado:
rafagil:
Na minha opinião, o mono só era uma boa idéia enquanto o Java não era OpenSource, pois não tinhamos nenhuma ferramenta à altura do .NET opensource. Mas agora com o Java aberto, creio que seria melhor unir esforços e melhorar o Java ainda mais, pois não fica devendo nada ao .NET.
Fica, uma VM multilinguagem sem gambiarras.
Por isso eu disse que deveria-se unir esforços para criar uma plataforma Java melhor.
Nesse ponto tenho que concordar com você. Mas, na minha opinião, é muito mais fácil esse mesmo “code monkey” passar a usar eclipse + spring + [mvc favorito aqui], ou uma outra implementação do Java EE (do glassfish para o JBoss por exemplo ou até o tomcat), do que o “code monkey” do .NET passar a usar mono.
Mas denovo, é a minha opinião, e continuo achando que projetos que tentam só copiar outro projeto nunca vão para frente. O pessoal do mono poderia também, aproveitar os recursos do .NET e criar um framework diferente do da MS, e não ficar comemorando o sucesso da implementação do .NET 2.0, beeeem atrás do .NET.
P
pcalcado
O ponto Não é melhorar Java, java é irrelevante. O ponto é ter uma VM que ermita rodar linguagens diferentes e se você acompanha a luta do essoal do jvm-langs sabe que a Sun, IBm e seus contratos comerciais são um grande problema nesse sentido. Apesar de não concordar com a estratégia do Mono de fazer piggyback no marketing da Microsoft (se fosse dez anos atrás eu acho qeu seria útil, hoje em dia é correr com quem não está na dianteira do mercado) isso não a invalida como lataforma multiplataforma e multilinguagem de extrema importância.
Se voc6 tem um desenvolvedor .N][m et do mesmo nível que o dev Java citado não há problema. Após algum tempo conversando com programadores .Net de verdade (e não usuários de VS.Net) você percebe que o estereótipo não é tão global quanto se acredita.
rafagil:
Mas denovo, é a minha opinião, e continuo achando que projetos que tentam só copiar outro projeto nunca vão para frente. O pessoal do mono poderia também, aproveitar os recursos do .NET e criar um framework diferente do da MS, e não ficar comemorando o sucesso da implementação do .NET 2.0, beeeem atrás do .NET.
Tente pensar no valor de uma VM de alta qualidade multilinguagem e pragmática.
L
louds
Rubem Azenha:
Calma la Louds (mono evangelist)… algumas empresas e pessoas tem problemas em utilizar algo que não esta completo (leia-se estável). Eu mesmo fico com receio. Eu particularmente já tive contato com muitos projetos em Java e .NET, mas tirando você, nunca nem ouvi falar de alguém que tivesse usado mono aqui no Brasil para algum projeto profissional em produção. Você diz que diversas empresas apoiam o mono e que a novel é o maior patrocinador… tirando a novel, quais empresas apoiam o mono de verdade?
Não estou falando que o mono é ruim, mas acho que você esta superestimando o projeto.
Maiora das empresas usam software antigo pois quem toma a decisão está mais preocupado com ass-covering do que a empresa - aquela velha história de que ninguém é demitido por escolher MS|IBM|Oracle. Existem empresas brasileiras como a Daruma que apostam no mono a um bom tempo para seus produtos.
O problema aqui no Brasil do mono é o mesmo com RoR, tudo acontece com 2-3 anos de atraso nesse pais retrógrado que vivemos. Enquanto isso lá fora tem empresas usando em jogos AAA, virtualização, HPC, aplicações corporativas, websites de alto volume, simuladores em grid (Second Life, por exemplo) e por ai vai.
Mono tem pouca penetração no mercado de aplicações de lojinha, que é 99% do que é feito no Brasil, seja para o mercadinho ou em grandes empresas.
Quanto as empresas que apoiam o mono além da novell, citei algumas já. A Mainsoft é um exemplo, eles investem bastante na parte enterprizy da pilha por conta do produto deles, o grasshopper.
R
rafagil
pcalcado:
rafagil:
Por isso eu disse que deveria-se unir esforços para criar uma plataforma Java melhor.
O ponto Não é melhorar Java, java é irrelevante. O ponto é ter uma VM que ermita rodar linguagens diferentes e se você acompanha a luta do essoal do jvm-langs sabe que a Sun, IBm e seus contratos comerciais são um grande problema nesse sentido. Apesar de não concordar com a estratégia do Mono de fazer piggyback no marketing da Microsoft (se fosse dez anos atrás eu acho qeu seria útil, hoje em dia é correr com quem não está na dianteira do mercado) isso não a invalida como lataforma multiplataforma e multilinguagem de extrema importância.
Por isso eu disse “plataforma Java” e não linguagem Java, mas poderiamos então, criar um projeto que rode o Java (linguagem, APIs, JSRs e etc), em cima da VM do mono (já que vc disse que ela é melhor). Seria uma boa, não acha? O poder do Java aliado aos recursos multi-linguagem do .NET
eu disse “code monkey”, não programador.
pcalcado:
Seria essa a VM do mono? Se sim, creio que seria muito interessante fazer algo do tipo que mencionei acima, ou seja, unir o Java OpenSource com o mono, aí (creio eu) teríamos uma plataforma realmente fantástica, porque, enquanto o mono ficar só implementando o .NET de dois ou tres anos atras, nunca terá qualidade.
L
louds
rafagil:
pcalcado:
rafagil:
Na minha opinião, o mono só era uma boa idéia enquanto o Java não era OpenSource, pois não tinhamos nenhuma ferramenta à altura do .NET opensource. Mas agora com o Java aberto, creio que seria melhor unir esforços e melhorar o Java ainda mais, pois não fica devendo nada ao .NET.
Fica, uma VM multilinguagem sem gambiarras.
Por isso eu disse que deveria-se unir esforços para criar uma plataforma Java melhor.
Vamos ver os resultados práticos da Sun ter colocado a JVM como open source: .
Sim, absolutamente nenhum. Nada, nothing, niente, rien, nichts.
A HotSpot é absurdamente complexa, fazer qualquer modificação na VM é um trabalho escúleo.
O próprio pessoal da Sun, o John Rose no caso, fala da dificuldade das pessoas começarem a
trabalhar com a JVM e leva em média de um a dois anos para aprender como ela funciona e conseguir
produzir algo. Um projeto em que um contribuidor leva 12 meses só para se achar no código não vai
receber muita ajuda externa, vai?
Enquanto isso tem muita gente que em poucas semanas consegue produzir hacks muito legal sobre o mono
como pode ser verificado pelo movimento da lista de discussão.
P
pcalcado
O Rodrigo pode confirmar mas até onde eu lembro Java roda no mono, e sem J#.
O code monkey vai para o que der dinheiro e seja fácil, não importa se java, .Net ou Delphi.
O Mono possui uma VM interessante e o HotSpot ossui muitas coisas interessante. O que importa é termos um mercado sadio de VMs e runtimes.
R
rafagil
Exato, porém com as classes do GIT/GCJ, seria legal implementar o classpath do OpenJDK (alguem sem habilita? rsrs).
pcalcado:
O Mono possui uma VM interessante e o HotSpot ossui muitas coisas interessante. O que importa é termos um mercado sadio de VMs e runtimes.
Concordo com você, e aliás, vendo toda essa discussão, fiquei interessado em dar uma estudada melhor no mono, e tentar fazer (ou pelo menos ver se é muito difícil) fazer o que disse acima, ou seja, mudar a implementação do Java no mono. Vou ver se consigo alguma coisa do gênero e volto a postar no GUJ. (o eclipse já roda no mono, agora falta o netbeans, rsrs). Mesmo que lento (pq eu já fiz codigo java no mono e é extremamente lerdo), pode ser interessante usar, por exemplo o GTK# com JPA :).
Isso que você falou pode ser aplicado a várias linguagens, como Java, PHP, Python…
Tá, Novell, MSFT… duas apoiam mono, mais alguma?
Quanto ao apoio da MSFT ao mono, fazendo uma rápida busca (ok, não é um método muito cientifico) vi poucas referências ao mono, tem incontavelmente mais referencias a Java. Que eu me lembre você disse que a Novell paga um grupo relativamente grande de pessoas para trabalhar com mono. E a MSFT? e as outras empresas?
Eu entendo a sua ligação com o mono.net, mas acho que você esta parecendo o Sérgio que colocava o link “O que as pessoas tem falado sobre o Mentawai?” em toda a discussão sobre frameworks web, querendo mostrar que o menta é melhor.
O Jeroen faz um ótimo trabalho com a IKVM. Por sinal, o mono foi uma das primeiras máquinas virtuais open source a rodar o Eclipse - via ikvm.
M
Marcio_Duran
:idea: Poderia usar Tecnologia Thinstall para virtualizar aplicativos jar ? Poderia transforma-los em Portables , e roda-los em qualquer plaforma Nova do Windows.
:arrow: Do desenvolvimento para arquitetura e da arquitetura para a demanda de produzir novos serviços.
L
louds
E daí? Quem disse que não são? Segundo sua lógica eu poderia equiparar o mono a essas plataformas no sentido de “serem sérias”.
Rubem, eu não falei em momento algum da MSFT, pode voltar e reler. A microsoft nunca investiu no mono. Não sei de onde você tirou essa idéia. Vamos lá, correndo o risco de ser repetitivo, a Mainsoft é uma empresa que investe no mono (é a terceira vez que te falo isso, só nesse tópico). Ela usa as bibliotecas do mono e contribui de volta bastante coisa na parte enterprizy do projeto (asp, ado, etc). Outro exemplo é uma empresa, que me falha o nome agora, que está portando o mono para win64.
Rubem Azenha:
Eu entendo a sua ligação com o mono.net, mas acho que você esta parecendo o Sérgio que colocava o link “O que as pessoas tem falado sobre o Mentawai?” em toda a discussão sobre frameworks web, querendo mostrar que o menta é melhor.
Mono.net? Que viria a ser isso? O projeto chama-se mono apenas. :x Mas sim, estou aqui mostrando um software que em muito acredito, porém faço apenas mostrando as pessoas que a opção existe. Ocorre então que em alguns tópicos alguns membros do fórum mostram mais interesse que em outros. Fora que não estou mostrando um brinquedo.
M
Marcio_Duran
:arrow:Java não suporta tecnologia Thinstall, isso é uma desvantagem ?
F
fenemeth
Cara, “atropelar o java” pode ter certeza que nao vai. Tanto é verdade que existe milhares de sistemas prontos feitos em java… quem vai dar manutenção neles…
Pensa assim, niguem conseguiu “Atropelar” o COBOL ainda, uhaeuhaeuhaue !!
Hum ta certo kra…Mas assim, queria estudar a tecnologia que irá evoluir, não a que ficará para dar manutençaõ. Mas como tecnologia eh coisa de loco, cada hora vai surgindo uma nova, fica difícil saber. Bem, deixo continuar com a kathy, grande abraço, vlww.
Cara, pode ter certeza que tanto o Java quando o .NET irão evoluir muito ! E realmente é muito dificil dizer que .NET vai “Dominar”, pq existem muitas linguagens no mercado.
As linguagens que mais estao na moda hoje em dia são Java e .NET, entao se voce for optar por uma linguagem, escolha uma dessas duas…
Tem o Ruby tambem que esta crescendo muito, caso voce goste de desafios hehehe !
Abraco
Oh vlw parcero, continuarei meus estudos com java mesmo. Grande abraço. faloow
V
ViniGodoy
É verdade. Eu fiz isso. Não era utilizável, era super lento e dava pau toda hora. Mas que “rodava”, isso “rodava”.
B
boaglio
Como usuário linux eu notei que nos últimos anos a quantidade de aplicações desktop usando mono está aumentando.
Além disso, na palestra do FISL que o louds ministrou, ele comentou algo interessante, que enquanto a Sun vai inchando a JVM com coisas e coisas, o mono tem a preocupação de deixar a sua VM mais leve e enxuta.
Parece uma boa estratégia, não ?
R
Rubem_Azenha
Boaglio, quem sabe daqui a 10 anos a Sun resolve implementar a JVM esquartejavel, assim não precisa baixar a JVM inteira e sim só o que precisa.
E
eduveks
Márcio, Código escrito em C# roda em mais plataformas que Java. Veja o JDK da Sun, roda em windows, linux e solaris. X86, AMD64 e sparc.
O mono funciona em windows, linux, solaris, OSX e freebsd. Arquiteturas, X86, AMD64, sparc, itanium, arm, s390, s390x, ppc e tem ports da comunidade para alpha e mips.
Mono hoje já funciona no IPhone e tem bindings para as bibliotecas específicas do dispositivo -como aquelas que envolvem multit-touch. Java para IPhone ainda é vaporware.
Isto é baseando em que? Nos binários disponíveis para download do no site oficial???
Onde esta FreeBsd? E quem disse q Java não dá no FreeBSD nos ports oficiais do FreeBSD tem lá o Java, assim como no OpenBSD e no NetBSD e DragonflyBSD a história não é muito diferente:
O Java des do inicio foca em suporte a todos sistemas operacionais e processadores, a muito já se pode compilar o Java a medida para cada plataforma/arquitetura.
E agora vem dizer que o Mono funciona em mais plataformas?
Louds, és muito bom e acompanho alguma das tuas discussões, normalmente com algum fundamento, mas esta, por favor… não é por ai…
Tanto o Java como o Mono podendo ser compilados, logo podem ser migrados para qualquer coisa.
Isto não cola mesmo…
E
eduveks
Em que lado do mundo, tem alguma grande empresa usando RoR ou Mono em produção?
Eu nunca ouvi falar de nenhuma por enquanto, não é só Brasil, em Portugal também é o mesmo cenário, e creio q no resto do mundo também.
Que fiabilidade RoR e Mono transmitem? Quem esta disposto a investir milhões nisto? Por enquanto não deve haver muitos, mas isto é uma questão de tempo.
Isto tudo…:
Usam o que? RoR ou Mono? Hummm
Não é para menospresar o RoR e o Mono, mas é um pouco óbvio q investir nisto agora, são soluções prematuras, o Mono esta ficando bom, mas não sei até que ponto bom para se livrar de vez do .Net MS.
E
eduveks
louds:
rafagil:
pcalcado:
rafagil:
Na minha opinião, o mono só era uma boa idéia enquanto o Java não era OpenSource, pois não tinhamos nenhuma ferramenta à altura do .NET opensource. Mas agora com o Java aberto, creio que seria melhor unir esforços e melhorar o Java ainda mais, pois não fica devendo nada ao .NET.
Fica, uma VM multilinguagem sem gambiarras.
Por isso eu disse que deveria-se unir esforços para criar uma plataforma Java melhor.
Vamos ver os resultados práticos da Sun ter colocado a JVM como open source: .
Sim, absolutamente nenhum. Nada, nothing, niente, rien, nichts.
A HotSpot é absurdamente complexa, fazer qualquer modificação na VM é um trabalho escúleo.
O próprio pessoal da Sun, o John Rose no caso, fala da dificuldade das pessoas começarem a
trabalhar com a JVM e leva em média de um a dois anos para aprender como ela funciona e conseguir
produzir algo. Um projeto em que um contribuidor leva 12 meses só para se achar no código não vai
receber muita ajuda externa, vai?
Enquanto isso tem muita gente que em poucas semanas consegue produzir hacks muito legal sobre o mono
como pode ser verificado pelo movimento da lista de discussão.
Por isso q talvez exista o OpenJDK e outras coisas parecidas… podem ser usadas como alternativa para “hacks”, etc, ninguem esta preso ao oficial… se tem o Mono como alternativa ao da MS, também tem o OpenJDK como alternativa ao da Sun…
Que ninguém chore, que há chupetas para todos :lol:
E
elomarns
eduveks:
louds:
O problema aqui no Brasil do mono é o mesmo com RoR, tudo acontece com 2-3 anos de atraso nesse pais retrógrado que vivemos.
Em que lado do mundo, tem alguma grande empresa usando RoR ou Mono em produção?
Eu nunca ouvi falar de nenhuma por enquanto, não é só Brasil, em Portugal também é o mesmo cenário, e creio q no resto do mundo também.
Que fiabilidade RoR e Mono transmitem? Quem esta disposto a investir milhões nisto? Por enquanto não deve haver muitos, mas isto é uma questão de tempo.
Isto tudo…:
Usam o que? RoR ou Mono? Hummm
Não é para menospresar o RoR e o Mono, mas é um pouco óbvio q investir nisto agora, são soluções prematuras, o Mono esta ficando bom, mas não sei até que ponto bom para se livrar de vez do .Net MS.
Não distribuímos binários para FreeBSD, tem que compilar via tarball. Ninguém da comunidade manifestou interesse em distribuirmos, logo não o fazemos. Se notas, ninguém aqui falou que Java não roda nos BSDs. Mas que até poucos anos era um verdadeiro parto, os mantenedores tinham de concordar com as licenças malucas da Sun com a SCSL para poder empacotar a JVM.
Nesse ponto você está enganado. Primeiro que somente os licenciados da Sun podem compilar e distribuir Java. Se você for e fizer isso com o OpenJDK não irá poder distribuir como Java, mas sim OpenJDK. A JVM da Sun só tem ports para sparc, x86 e amd64. Não existe nenhum port da JSE para ARM ou outros dispositivos portáteis, mesmo pq a Sun não permite[1]. Você está confundindo sistema operacional com plataforma/arquitetura.
[1]Veja a enorme briga que deu entre o Apache Harmony e a Sun por conta de todas restrições de uso que existem sobre a JSE.
Todas que eu conheço fica do lado de fora, não conheço nenhum deployment subterrâneo de RoR ou Mono. RoR tem uma tração enorme nos EUA e existem muito e muitos cases de sucesso. Não sou um especialista em Ruby para falar melhor disso, mas é só olhar para o lado de fora.
Quanto a mono, bom, ele já é usado em coisas que vão desde mp3 players, jogos 3D, sites ASP.NET a aplicações desktop comerciais. Se fosse tão divulgado e difundido como Java ou MS .NET provavelmente você saberia de muitos, mas não é o caso.
Eu acho perfeitamente normal você não saber de cases do mono, nós somos um desastre de marketing . Em Portugal não vou saber te responder, mas no Brasil tem a Daruma, por exemplo, que homologou toda pilha de automação comercial dela em cima do mono.
Quanto ao RoR, bom, casos existem aos montes e eles sabem fazer publicidade disso. A Oracle vende um produto feito com Rails, para você ter idéia.
E
eduveks
Fazer programinhas é uma coisa, outra coisa é ter uma plataforma de um banco inteiro feito em cima de Ruby ou Mono, isto sim é q dá credibilidade e mostra o quão potente é a tecnologia para atender grande quantidade de acessos.
Eu acredito que tanto o Mono como o Ruby tendem a ganhar cada vez mais credibilidade, mas agora, acho que ainda seria uma decisão meio prematura nestas situações, teria que ter muita coragem mas quem sabe daria conta do recado assim como .Net MS e Java.
Eu gosto do projeto Mono e acompanho, nao tanto como o Java, tenho o MonoDevelop instalado e ja andei brincando e esta ficando bom, mas claro longe de um Netbeans, mas isto é uma questão de tempo acredito.
Mas temos que levar em conta todo o potêncial que o Java tem demonstrado até aqui, e a forma que esta se adaptando a evolução, o que não esta sendo mau de todo. Não vejo pontos fracos tão consideraveis ao ponto de me convencer a desistir do Java e adotar .Net ou Mono, acho que a diferença entre Java e .Net nunca vai ser gritante, até por que um acompanha a evolução do outro.
Investir tanto em .Net como em Java hoje em dia, é uma boa decisão. Estão pau a pau, um mais forte numa coisa outro mais forte noutra.
P
pcalcado
Ruby on Rails é uma platafora paracriação de aplicações web então seria estranho um banco usar essa tecnologia para toda a sua plataforma. De qualquer modo, é bem raro ver um banco inteiro que use Java para “toda a sua plataforma” já que a grande maioria dos bancos usa mainframe para quase tudo relacionado a dinheiro.
Desculpe mas se casos como Oracle, twitter, yellowpages.com e todos os outros no link que o elomartis te mandou não forem suficientes eu me pergunto qual tecnologi está madura para o mercado.
E
eduveks
pcalcado:
eduveks:
Fazer programinhas é uma coisa, outra coisa é ter uma plataforma de um banco inteiro feito em cima de Ruby ou Mono, isto sim é q dá credibilidade e mostra o quão potente é a tecnologia para atender grande quantidade de acessos.
Ruby on Rails é uma platafora paracriação de aplicações web então seria estranho um banco usar essa tecnologia para toda a sua plataforma. De qualquer modo, é bem raro ver um banco inteiro que use Java para “toda a sua plataforma” já que a grande maioria dos bancos usa mainframe para quase tudo relacionado a dinheiro.
Desculpe mas se casos como Oracle, twitter, yellowpages.com e todos os outros no link que o elomartis te mandou não forem suficientes eu me pergunto qual tecnologi está madura para o mercado.
Eu não sei, só sei que eu não depositaria todas minhas fichas nisto por enquanto, acho q ainda é cedo para sair usando isto em tudo e mais um pouco.
E quanto a uma plataforma de um banco, claro, mas quis dizer como tecnologia principal. E eu citei Ruby e não RoR neste caso.
Se bem q sei de um banco q usa JavaScript para a lógica de negócio em server side, por isto também não dúvido de nada, mas eu, não apostaria nisto pra já.
Até por que acho que ainda acho que não há mão de obra bem qualificada para Ruby, o povo ainda esta aprendendo, e qualquer problema mais sério quem resolve? Mas tudo é uma questão de tempo, daqui uns 3/5 anos acredito q o cenário comece a mudar mais a favor do Ruby.
M
maior_abandonado
bom…isso me pareceu coisa de gente grande (eu ainda sou meio novo nessa area) mais tenho certa opinião…
muitas empresas conforme li ai em cima usam .net 1.1 ainda (mesmo estando na 3.5)…
o que eu vejo por ai oepssoal usando é a versão 2.0…
a questão é… em java, vc tem uma certa portabilidade entre versões… codigo feito em java 1.4 em grande maioria ainda vai roda com um jdk 6.6…
um codigo criado com um .net framework 1.1 não vai roda no 2 nem 3, um criado na segunda versão não roda em nenhum dos outros, em relação a terceira versão ainda esta sendo criada muita coisa… mta gente usa 1.1 mais nem que quisessem atualiza seria viavel… tem que fica com algo antigo…
um arquivo gerado com o .net em alguma dessas versões funciona no mono?
da pra confia em algo que fica mudando assim, te obrigado a não conseguir atualiza a vm e usa uma antiga, ou ter que cria tudo denovo??
eu sei que eu posso estar enganado mais, quem usa essa tecnologia ainda esta preso a algumas coisas… essa tecnologia me parece estar no caminho certo mais…ainda tem que anda mto…
E
eduveks
motivos para não confiar não faltam… mas… se é o que há, e como muita gente não é exigente, deixa passar e vai sobrevivendo com este cenário.
o Java sofre um pouco com isto de manter a compatibilidade, no .Net como não se preocupam muito com isto, cada versão é aquela coisa linda cheia de novidades… e bugs…
só no office q se preocupam manter a compatibilidade, afinal é o produto mais rentavel, até no windows deixaram a compatibilidade de lado, o que podemos esperar?
mas há quem fique satisfeito com tudo isto e aprecia, há quem diga que é sinonimo de evolução. O que me parece que o desenvolvimento é tão zuado, q preferem refazer muita coisa para conseguir evoluir.
testes q fiz com o Mono, para aplicações Console/WindowsForms funcionou bem, mas web… web ainda é o problema e vai ser sempre dificil, tentar rodar uma aplicação em sharepoint, cms, etc, fica complicado, até onde sei, mas o louds pode dar mais informações sobre isto.
acredito q esta preucupação de manter a compatibilidade do Java, ajuda a dar mais credibilidade ao Java.
e no .Net algumas aplicações feitas em 1.1 rodam na 2.0 e feitas em 2.0 rode na 3.5, mas depende dos recursos q a aplicação use, em alguns casos dá na perfeição, mas o grande problema é migrar o projeto/source para estas versões, é preciso muita alteração de código normalmente.
B
bandrade
Tive mais problemas com migração Java do q .Net… depende da equipe que programou, se fizeram bem feito, se nao usaram metodos Obsolete, etc. etc.
V
ViniGodoy
Engraçado, eu nunca tive problemas com o Java (exceto no caso da javax.com, que sempre foi uma extensão) e meu histórico de migração com ferramentas da microsoft sempre foi cheio de dores de cabeças e problemas graves. Não posso falar do .net, pq ainda não tive a oportunidade de usar.
L
louds
A resposta é depende. Depende se foi usado P/Invoke para coisas nativas do windows, depende se as APIs usadas já foram implementadas pelo mono. Dado que usar P/Invoke é ordens de magnitude mais simples que JNI, muito desenvolvedor prefere usá-las que aprender a API correta do framework.
Quanto a aplicações 1.1 pro 2.0, o grande problema que eu sempre vejo é por conta do pessoal ter usado os editores visuals de ASP.NET do VisualStudio. Se tua aplicação foi construida usando um framework MVC como o Castle, normalmente basta recompilar. A principal mudança foi na ferramenta e não no runtime/framework.
Outra coisa, só existem as versões 1.0 e 2.0 da CLR, o resto são apenas updates de bibliotecas e compiladores, não existe pq uma aplicação 2.0 não funcionaria com o 3.0 ou 3.5, por exemplo.
L
louds
ViniGodoy:
Engraçado, eu nunca tive problemas com o Java (exceto no caso da javax.com, que sempre foi uma extensão) e meu histórico de migração com ferramentas da microsoft sempre foi cheio de dores de cabeças e problemas graves. Não posso falar do .net, pq ainda não tive a oportunidade de usar.
Eu nunca tive grandes problemas com Java, a maioria se resumia a bugs diferentes na implementações de zip, sockets e file I/O, muito em especial com nio. Fora os problemas que não tem como ser evitados como paths com case errado ou exclusivo de um SO. Nunca tive que migrar aplicações com código JNI, felizmente.
N
neofito
louds:
…
[1]Veja a enorme briga que deu entre o Apache Harmony e a Sun por conta de todas restrições de uso que existem sobre a JSE.
…
Se for isso mesmo (o que não duvido), o tão belo “Java é apenas uma especificação”, é uma tremenda de uma mentira.
Decepcionante.
M
marcosalex
"
L
louds
Qual Java? Quantas plataformas o JRE 5 ou 6 está disponível? Mesmo incluindo todos vendors que não seja a Sun, não tem muitas não. JME e JSE são coisa completamente diferentes, argumentar que Java está disponível em tudo quanto é canto por conta disso é inócuo.
M
marcosalex
"
L
louds
Eu te perguntei de implementações do Java 5 ou 6. Não vejo muita utilidade em discutir sobre o fato de em 99 terem portado a Japhar (que implementava o Java 1.1 parcialmente) para Amiga. Essa sua lista só fala de VMs do começo do século, quando muito. Nenhuma menciona o java 1.4 se quer. Vamos lá, quantos SOs/arquitetura rodam Java 5 ou 6.
Vou te dar uma dica, não roda nem em dispositivos embarcados ou video games, não existe nenhuma implementação do JSE que rode em ARM. Falo de implementações avançadas o suficiente para que seja possível usar em um projeto real.
Quantos % da API do Java você usa? Somando tudo aquilo que os desenvolvedores desse fórum já escreveram em Java, quantos % da API vc acha que foi usado? 5, 10, 20, 50, 99%?
Quantos aqui perdem tempo com aquelas APIs obscuras e inúteis da JSE? Ainda assim, se alguém implementar uma JVM faz sentido ela ser taxada de inútil por justamente não implementar muita das coisas que ninguém usa?
M
marcosalex
"
E
eduveks
A briga era em Java vs .Net, agora é Java vs Mono
Eu também discordo de algumas opniões e afirmações do Louds, mas também foi meter o Mono aqui no meio rivalizando com Java.
Bem na minha opinião tanto Java como Mono são plataformas importatissimas, a grande diferença entre as duas é a maturidade, q o Mono aos poucos vai ganhando, e assim ganhando confiança e mais apostas.
O IKVM é um excelente projeto, e muita coisa feita em Java já da para rodar com .Net na boa, até o H2DataBase um dia na lista de discussão foi lá um maluco dar boas noticias de q estava usando o H2DataBase com C#, o IKVM ficando realmente muito bom, e se a performance for tal e qual a da JVM, ou superior, como q vai ser?
Independente disto acredito q hoje em dia ainda Java é preferência, e vai continuar sendo, e Java sendo portado para .Net maravilha, mais portas se abrindo, ou seja trabalhando com Java nem .Net é uma barreira, por toda esta diversidade do Java, ta mais do que provado que vale a pena continuar focando em Java. É a minha opinião.
L
louds
marcosalex:
louds:
Eu te perguntei de implementações do Java 5 ou 6. Não vejo muita utilidade em discutir sobre o fato de em 99 terem portado a Japhar (que implementava o Java 1.1 parcialmente) para Amiga. Essa sua lista só fala de VMs do começo do século, quando muito. Nenhuma menciona o java 1.4 se quer. Vamos lá, quantos SOs/arquitetura rodam Java 5 ou 6.
Tanto a 5 ou 6 roda em todos os Unix e BSD. PS2 roda a JVM 1.5 e talvez até a 6, já que não mudou tanto assim. O link que postei é mais antigo, você pelo menos procurou outros, ou continua só falando?
Vamos aos fatos:
:arrow: A sony anunciou que ia portar a JVM pro PS2 e isso nunca aconteceu, nunca chegou a existir uma JVM disponível para o console que não fosse experimental.
:arrow: Concordo contigo que Java 5, ou 6, está disponível para mais UNIX comerciais que o mono.
:arrow: Não existem versões da JSE para dispositivos portateis - pode procurar o quanto quiser, a Sun simplesmente nunca quis deixar
:arrow: Java 5 está longe de estar disponível em todos Unix. Consulta quando foi lançada a última versão para Tru64 ou OpenVMX por exemplo. Nem me fale do port para VAX.
Java em muitas plataformas implementa uma coisa completamente diferente da JSE, ou então versões muito velhas. Não tem como dizer, por exemplo, que um celular que tem JME é um subset da JSE, é um treco muito diferente.
Outra coisa, não existem implementações parciais da JSE pois a Sun não permite usar o nome Java se não passar pelo TCK da plataforma.
Tem toneladas de APIs na JSE e no .NET que deveriam ser bibliotecas a parte, que não fazer o menor sentido serem distribuidas junto. Tanto por aumentar o trabalho de quem porta, o tamanho da distribuição e engessar APIs que não estão sólidas ainda.
Maioria das APIs exotéricas do JSE foram inclusas aquém do JCP, seja da época que a Sun tinha mando completo sobre a JSR do Java (circa 1.4 e 1.4.2) ou nos casos recentes dela entubar coisas por conta da sua agenda. Vide, por exemplo, logging, eu ainda tou para conhecer um projeto que use java.util.logging em vez de log4j. Aquilo que tem na JSE é nitidamente um produto inferior.
marcosalex:
Como sugestão, é interessante acompanhar o JCP para ficar a par de como funciona a implementação de novos recursos na máquina virtual pra não arriscar dizer alguma coisa sem fundamento no forum.
Eu acompanho o JCP muito mais de perto que você imagina
E
eduveks
Então concordas que o Java 5 ou 6 esta mais disponível para Unix do q o Mono? Então logo no mundo dos servidores Unix, Java continua na frente, e depois ainda diz q Java esta ultrapassado em Tru64, OpenVMX e VAX!? E o Mono nestes ai como q ta? No site do Mono não vejo mais opções de downloads oficiais q do Java.
É óbvio q manter suporte oficial a tudo isto é impraticável, a faze de testes só em Unix não ia ter fim, e quem usa isto ainda? São tantos, mas tantos q vai afetar as receitas? E vai impor uma barreira para a divulgação do meu produto? Claro q não! Mais uma vez só querendo cuspir pra cima do Java.
Mono é bom, mas se quer que o teu produto abranja mais plataformas, não venha com conversa, Java ainda é a melhor opção. Mono um dia quem sabe iguale ou supere o Java, quem sabe, futuro longincuo.
Concordo em partes e discordo, concordo q tem coisa q não presta pra um ou pra outro, q esta ultrapassado e talz, mas isto gerar problema pra quem porta?! Logging, Derby, etc… são feitos 100% em Java, logo isto não tem q ser portado, basta ter a JVM bem portada q automaticamente isto vai funcionar, ou nãO???
Realmente o Logging e o Derby são fracos, e eu também não uso nenhum dos dois, é o log4j e o H2DataBase, mas pow, quanta gente esta usando o Derby por causa disto, e quantos estão insatisfeitos? A maioria esta usando, para a maioria dos casos serve perfeitamente, o Logging a mesma coisa, e o mesmo para o Rhino, muita gente vai preferir usar outras APIs, mas muitos vão preferir usar estas q já estão prontinhas para usar, é uma opção a mais! E só por q o Mono não tras um Logging, um Derby e um Rhino da vida então o Java é ruim por que dá mais opções ao programador?!
Quem ve vc falando até deve pensar q “portar” o .Net para Linux/Unix é bem mais fácil… e depois portar o Mono para as distribuições Linux/Unix, deve ser molezinha deve… só não entendo por que ainda não esta em mais plataformas q o Java…
Realidade no mundo Mono, Microsoft lança uma novidade na especificação do C#, lança uma nova versão do .Net, agora quem usa Mono senta e espera até ter isto implementado para poder usar no Linux/Unix, se eu produzo software .Net em ambiente Linux/Unix, como vou conseguir competir com os que produzem em ambiente Windows? Vou estar sempre um passo atrás…