Apesar de muitas melhorias C++11
, C++
ainda não é uma linguagem fácil. Java, embora não seja tão fácil quanto alguns possam pensar, ainda é uma linguagem mais fácil com desempenho muito bom (geralmente quase tão rápido quanto C++
) e oferece IDEs melhores (talvez Visual C++
seja tão bom quanto os IDEs Java atuais, mas sem sorte aqui no Linux), biblioteca padrão mais abrangente (o JDK), mais bibliotecas (por exemplo , Hibernate , Spring , JEE , Lucene , etc) e sem vazamentos de memória (bem, quase nenhum - você ainda pode criar um vazamento de memória em Java, mas é mais difícil fazê-lo do que em C++
). Para ser justo, com o moderno C++11
, é muito mais fácil evitar o alho-poró da memória.
O C ++ 11 possui muitos recursos interessantes, como lambdas, palavra-chave automática, semântica de movimentos e muito mais. É definitivamente uma linguagem muito melhor do que C++98
era. Veja esta visão geral de Herb Sutter sobre os novos recursos em C++11
: Elementos do C++
estilo moderno .
Resumindo, acho que todos deveriam aprender pelo menos alguns C++
. Se você tiver sido programação em Java
, Scala
, Ruby
ou Python
para a última década e nunca tocou C
ou C++
, agora com C++11
que eu acho que é hora de aprender C++11
e melhorar suas habilidades de programação ao fazê-lo.
Provavelmente, não usarei C++
muito trabalho nos próximos anos e, quando precisar de uma linguagem mais poderosa do Java
que provavelmente usarei o Scala, mas examinarei mais de perto C++11
e tentarei aprender e entender os novos recursos, particularmente aqueles sobre multithreading e simultaneidade.
Lembre-se: sempre ajuda a aprender uma nova linguagem de programação, mesmo quando você não planeja usá-la na produção.