Lista de grandes Softwares desenvolvido em Java

bem para web, noto alguns jsp, por aí…
o site de namoros, do par perfeito,
é java

www.combine.com.br

e volta e meia esbarro com algum outro também.

as vezes é, mas a terminação não é obrigatória não tem algo assim…
uma vez achei que o jornal da rbs era, depois sumiu a terminação, não tenho certeza.

http://diariocatarinense.clicrbs.com.br/sc/geral/

Tem a App Store da Apple que é feito em Java (WebObjects).

portal do banco do brasil é jsp

Lembrando que o Minecraft e o Taikodom também não são 100% java.

Eles usam a LWJGL, que é um binding para C++.

O Java não tem suporte a joystick, nem integração com OpenGL e nem suporte a audio tridimensional.
Sem isso, esses jogos não poderiam sequer ser produzidos.

Reiterando, Java é a tecnologia que tem se destacado no desenvolvimento de sistemas, lembrando que sistema != aplicação.

Um ótimo exemplo é a Battle.NET da Blizzard, que apesar do nome é construída em Java. Nesse caso, esse sistema reune as contas de usuário, controle de personagens, segurança, sistema de pagamento, etc. Tudo isso integrado aos jogos da empresa, feitos em C++.

Eu gostaria de desenvolver um software com Java e C++. É possível ?

Mas, como fazer essa integração ?

[quote=hackum]Eu gostaria de desenvolver um software com Java e C++. É possível ?

Mas, como fazer essa integração ?[/quote]

Sim.
Opções:

  1. Software em Java com dlls em C++ acessadas por JNA: http://jna.java.net/
  2. Software em Java libs ou dlls C++ acessadas por JNI: http://java.sun.com/docs/books/jni/
  3. Comunicação entre software Java e software C++ através de sockets
  4. Comunicação entre software Java e software C++ através de escrita de arquivos ou banco de dados
  5. Comunicação entre software Java e software C++ através de pipes

Exatamente. Já vi o Java sendo pedido para o cargo de desenvolvedor de ferramentas na Naughty Dog também. Embora o mais comum seja achar programadores de ferramentas em C#.
Para quem não sabe, o programador de ferramentas é aquele que faz softwares que permitem a construção de games, tais como, otimizadores de meshes, texturas, construtores de fases, aplicações para estimativa de DPS, etc…

[quote=hackum]Aqui está uma lista de softwares escritos em várias linguagens:

http://www.lextrait.com/vincent/implementations.html

Agora, porque a maioria dos softwares é escrito em C/C++ ?[/quote]

Legal esse link… mas acho que tem alguns erros…
Comentando…

Ele ta dizendo que o: javac (Sun Java compiler) é escrito em Java ??? Pelo que eu saiba é escrito em C …
Lá também diz que o Oracle possui Java, mas não no nucleo (acredito que no gerenciador esta presente somente em algumas funcionalidades, parece que tem uma parte de XML que depende do Java). No db2 ele também fala que não tem Java, mas só se for nas versões mais novas, pois usei o Db2 8 bastante tempo e o client era todo em Java e no server ele também instalava um Java (não sei se era só para os aplicativos e não precisava de Java para nada do núcleo, mas enfim).

Respondendo a pergunta.
Acredito que a maior parte dos softwares são escritos em C/C++ pois tratam-se de linguagens de alto nivel super poderosas, são tecnologias sólidas, que possuem um imenso legado de bibliotecas, pouca limitação, etc…

O javac é escrito em Java, pode ver nos fontes do JDK que estão disponíveis em “Java SE 6 JDK Source Code” na página do download do JDK ( http://www.oracle.com/technetwork/java/javase/downloads/index.html ).
O núcleo do Oracle não é em Java, mas você pode escrever uma stored procedure em Java.
O núcleo do DB2 não é em Java, mas você pode escrever uma stored procedure em Java.

Além dos motivos citados, também vale lembrar que:

  • C++ é muito mais portável do que Java. Você pode fazer um software para um número muitíssimo maior de plataformas;
  • É fácil construir interfaces gráficas em C++ hoje em dia com as bibliotecas certas: Basta ver o QT;
  • No C++, o programador tem controle absoluto da memória e pode fazer otimizações agressivas - o que é importante para aplicativos como bancos de dados, players de vídeo, software embarcado ou games;
  • No C++, você tem a possibilidade de usar hardwares específicos ou APIs do sistema operacional específicas;
  • Todas as novidades tecnológicas funcionam primeiro em C e, consequentemente, em C++.
    [EDIT] - É praticamente impossível descompilar um software escrito em C++.

Talvez ele esteja falando do javac do openjdk:
http://openjdk.java.net/groups/compiler/README.html#build

Creio que ele se refere a engine do banco de dados em si, não em aplicações paralelas (clientes).
O Oracle tem uma engine que compila Java em uma forma proprietária de Stored Procedure.

Uma coisa que geralmente causa confusão nesse tipo de dicussão é o fato de tanto a linguagem, quanto a plataforma, chamarem-se Java.

Se estivermos falando em linguagem Java, então teremos que considerar o Android e as SPs do Oracle e DB2. A linguagem Java está em mais locais que a plataforma como um todo está.
Agora, se considerarmos a plataforma Java, aí não podemos considerar Android, Minecraft ou SPs de banco, pois estas dependem de recursos externos a JVM para rodar.

Essa distinção é importante, pois se estivermos usando a plataforma java, nossa aplicação tem o benefício de rodar em qualquer VM java padrão.
Se estivermos usando só a linguagem, recorrendo também a bindings específicos, aí a aplicação só será portável para onde os bindings tiverem sido portados.

Portanto, seria bom definir em qual desses casos consideramos uma “aplicação feita em Java”.

A um tempo atrás estava sendo remodelado a parte das lotéricas usando Java.

Acho que o sistema dos correios também são!

[quote=ViniGodoy]Uma coisa que geralmente causa confusão nesse tipo de dicussão é o fato de tanto a linguagem, quanto a plataforma, chamarem-se Java.

Se estivermos falando em linguagem Java, então teremos que considerar o Android e as SPs do Oracle e DB2. A linguagem Java está em mais locais que a plataforma como um todo está.
Agora, se considerarmos a plataforma Java, aí não podemos considerar Android, Minecraft ou SPs de banco, pois estas dependem de recursos externos a JVM para rodar.

Essa distinção é importante, pois se estivermos usando a plataforma java, nossa aplicação tem o benefício de rodar em qualquer VM java padrão.
Se estivermos usando só a linguagem, recorrendo também a bindings específicos, aí a aplicação só será portável para onde os bindings tiverem sido portados.

Portanto, seria bom definir em qual desses casos consideramos uma “aplicação feita em Java”.[/quote]

Perfeito Vini… se considerar linguagem Java, realmente tem coisa para tudo quanto é lado!
Agora plataforma é diferente.

Sendo assim… fica a duvida… como o Eclipse depende do SWT que faz bind nativo, e não faz parte da plataforma Java. O eclipse é um aplicativo da plataforma Java ou somente da linguagem Java??
Acredito que a segunda opção… ou se não… pq ?

[quote=jmmenezes]Sendo assim… fica a duvida… como o Eclipse depende do SWT que faz bind nativo, e não faz parte da plataforma Java. O eclipse é um aplicativo da plataforma Java ou somente da linguagem Java??
Acredito que a segunda opção… ou se não… pq ? [/quote]

Segunda opção. Você não poderá rodar o eclipse a menos que a SWT tenha um port para a plataforma-alvo desejada.
O que já não ocorre com o Netbeans. Tendo uma VM java e uma interface gráfica, ele roda.

[quote=hackum]Eu gostaria de desenvolver um software com Java e C++. É possível ?

Mas, como fazer essa integração ?[/quote]

Por isso programador não é valorizado pelo mercado.

[quote=Hermanoz][quote=hackum]Eu gostaria de desenvolver um software com Java e C++. É possível ?

Mas, como fazer essa integração ?[/quote]

Por isso programador não é valorizado pelo mercado.[/quote]

Confesso que não entendi a relação entre uma coisa e outra…

[quote=ViniGodoy]
Confesso que não entendi a relação entre uma coisa e outra…[/quote]

Estou falando de alguns programadores que preferem fazer software usando linguagem X e Y pra parecer que é cool, ao invés de se preocupar em gerar valor para clientes e usuários.

[quote=Hermanoz][quote=ViniGodoy]
Confesso que não entendi a relação entre uma coisa e outra…[/quote]

Estou falando de alguns programadores que preferem fazer software usando linguagem X e Y pra parecer que é cool, ao invés de se preocupar em gerar valor para clientes e usuários.[/quote]

Mas há determinados softwares que não há como fazer apenas utilizando uma linguagem. Inclusive no java,em que ha pouco acesso e manipulamento de hardware para os programadores.

Se quer manipular hardware escolha a linguagem que foi feito pra isso.

Acredite em mim, só pq você faz questão de usar java pra algo que não foi feito não lhe faz parecer mais esperto.