Oi gente eu estou com outra duvida.
eu queria aprender a desenvonver aplicações e jogos em
java pois ela é multiplataforma, mais eu queria saber se o c/c++ tambem é
e qual é melhor para desenvolver aplicações e qual é a melhor para desenvolver jogos
ps eu sei que nao existe melhor e pior e sim a que você domina e a que nao domina e todo esse papo
mais qual é a mais forte para cada area e qual a melhor para iniciantes
C/C++ são compiladas para código de máquina, dessa forma obtém-se uma performance
superior à Java que é compilada para bytecodes e executada numa máquina virtual.
Se você escreve algum programa em C/C++, deverá compilá-lo para cada tipo de arquitetura
e SO. No caso de Java, isso não deve ser necessário, já que roda na VM.
Você pode desenvolver apps com as duas linguagens. Pode desenvolver games com as duas também.
mais tipo eu fiz o programa em c++ compilei ele para windows
para compila-lo para o linux por exemplo eu teria que escrever
o codigo de maneira diferente ou so compilar de maneira diferente?
Não considero as linguagens difíceis, se você está começando,
dá uma olhada em C e programação estruturada. Quando for partir pra OO,
vai pra C++. Estude lógica de programação e algoritmos e procure algo sobre
lógica voltada para games, que é um pouco diferente da lógica para desenvolvimento de
software enterprise.
Tenho duas visões diferentes entre essas duas linguagens.
Primeiro vou comentar sobre C++.
Qual é a utilidade de programar em C++?
A maioria dos jogos criados são feitos nessa linguagem
e na grande parte qse todos os jogos feitos para video games tambem.
Outras linguagens entram em ação quando o jogo é feita na plataforma de computadores.
Mas tambem c++ é grande usado.
Acredito que cerca de 85% dos jogos são feitos nessa linguagem, além de ser orientado a objetos
também tem uma grande gama de bibliotecas prontas.
Por exemplo, ela é uma linguagem que trabalha super bem com periféricos, um deles é criar
um sistema operacional, C#,C++ e VB.Net deu origem ao Windows 8 e na grande maioria
foi feito em C++ a parte de integração com o hardware.
Lembrando que pra jogos você deve ter o mesmo conceito, pois vai precisar ter noção de como
o jogo vai agir depedendo da configuração do computador (placa de video, processador, memoria).
Tem que se adequar.
Minha visão é usar C++ para jogos mais robustos.
Caso querer criar jogos em Java, recomendo tambem, mas nao com tanta enfâse, se for assim
use JavaFx melhor para efeitos gráficos e configuração, sendo q tambem usa CSS e outras coisas assim.
Na verdade, depende de que tipo de jogo você quer fazer.
Pra jogos de alto desempenho, praticamente todos são feitos em C++.
Mas são empresa que fazem, com centenas de profissionais…
Jogos mais simples, como aqueles online, Java é bastante usado e, claro, é bem mais simples de se fazer.
Só gostaria de fazer uma pequena ressalva ao DevC++, não use. É uma IDE abandonada, o projeto já parou há muito, muito tempo.
Esta bem antigo e é bem fácil ter dor de cabeça com ele, conforme for evoluindo. Era muito usado antigamente, principalmente nas faculdades. Mas o projeto acabou e continuaram indicando.
Gosto muito mesmo do Code::Blocks. Tem tanto no Windows como no Linux, syntax highligting, maior suporte a plugins, compilador atualizado, autocompletar etc.
No futuro, se ainda estiver essa preocupação interessante de portabilidade Win/Unix, dê uma pesquisada sobre o Qt Creator, que é cross-plataform.
Dar uma dica dessas é como falar para você desenvolver no Eclipse 1.0, com o Java 1.2… é antiga, ultrapassada, cheia de bugs. Não dá suporte a depuração, nem a versões mais novas do MinGW, nem ao C++11.
Há alternativas melhores, open source e modernas, como o Code::Blocks ou o Visual Studio Express.
Eu não recomendo criar jogos em Java. É uma linguagem péssima para jogos.
Não é apoiado pela Oracle, não tem suporte a plataformas interessantes, tem uma comunidade pequena.
Sem falar em outros problemas técnicos: não suportar sobrecarga de operadores, não dar controle sobre o garbage collector, etc…
Em C++ é interessante, mas é um longo aprendizado até que saia alguma coisa. Uma linguagem fácil como o Java e poderosa é o C#.
Você pode baixar o XNA e desenvolver jogos para o Windows. A sintaxe dele também te ajuda a entender o funcionamento do DirectX.
Há várias APIs 2D interessantes em C++. Uma delas é a SDL. É uma API simples, fácil de usar e poderosa.
Outra, orientada a objetos, é a GamespaceLib (agora chamada de Ethanon). Finalmente, você pode procurar por APIs fortemente integradas como a Cocos-X, que até engine de física já tem.
Detalhe: Não existe a linguagem C/C++. C é uma linguagem, e C++ é outra, completamente diferente. Tanto em funcionalidades, quanto em bibliotecas. Muita gente confunde pois é possível compilar código C em C++, mas isso não significa que seja boa prática usar o estilo de C em C++.
C# é uma terceira linguagem que não tem absolutamente a ver com essas duas, mesmo.
O Geany é um editor, não exatamente uma IDE. Ele tem suporte a chamar makefiles, mas não a depuração (ou seja, chamar um depurador externo, como o gdb, e ir associando o que o gdb fez com as linhas do seu programa).
Se você usar um plugin, no entanto, você pode fazer mais ou menos isso (associar o gdb ao seu programa e ir debugando seu programa, mais ou menos como se fosse uma IDE normal). http://plugins.geany.org/geanygdb.html