Nonostante molti miglioramenti C++11, non C++è ancora un linguaggio facile. Java, sebbene non così facile come alcuni potrebbero pensare, è ancora un linguaggio più semplice con prestazioni molto buone (spesso quasi altrettanto veloci C++) e offre IDE migliori (forse Visual C++è buono come gli IDE Java attuali ma nessuna fortuna qui su Linux), molto libreria standard più completa (JDK), più librerie (ad es. Hibernate , Spring , JEE , Lucene , ecc.) e nessuna perdita di memoria (beh, quasi nessuna - è ancora possibile creare una perdita di memoria in Java ma è più difficile farlo che in C++). Ad essere onesti, con il moderno C++11, è molto più facile evitare i porri della memoria.
C ++ 11 ha molte funzioni interessanti come lambda, parola chiave automatica, semantica di spostamento e molto altro. È sicuramente un linguaggio molto migliore di quello che C++98era. Guarda questa panoramica di Herb Sutter sulle nuove funzionalità di C++11: Elements of Modern C++Style.
Per riassumere, penso che tutti dovrebbero imparare almeno alcuni C++. Se siete stati programmando in Java, Scala, Rubyo Pythonper l'ultimo decennio e mai toccato Co C++, ora con C++11penso che sia il momento di imparare C++11e migliorare le vostre abilità di programmazione, mentre farlo.
Probabilmente non userò C++molto al lavoro nei prossimi anni e quando avrò bisogno di un linguaggio più potente di Java, probabilmente andrò per Scala, ma darò un'occhiata più da vicino C++11e cercherò di apprendere e comprendere le nuove funzionalità, in particolare quelli su multithreading e concorrenza.
Ricorda: aiuta sempre ad imparare un nuovo linguaggio di programmazione anche quando non prevedi di usarlo in produzione.