Comment dois-je remettre mon C ++ à jour avec les développements modernes? [fermé]

9

Comment mettre à jour un C ++ très rouillé, car je suis sûr que le langage et les meilleures pratiques ont évolué? Je me rends compte que cela pourrait être presque hors sujet, alors laissez-moi clarifier certains détails. Il y a environ 10 ans, je pense que j'étais un assez bon programmeur C ++, j'avais dévoré les livres de Scott Meyers, je pouvais résoudre les énigmes des publicités sur les peluches du Dr Dobbs. J'étais probablement un peu un juriste de la langue. Je programme principalement Java, du python depuis 10 ans donc mes compétences OO sont toujours à la hauteur. Mais après avoir rejoint une entreprise où le C ++ est courant, j'ai réalisé que je dois admettre que je suis à la fois très rouillé, et il y a maintenant des fonctionnalités de langage qui sont soit nouvelles soit beaucoup plus courantes que je ne m'en souviens - des choses comme les espaces de noms, etc.

Je me rends compte que la lecture et l'écriture de code (en particulier l'appariement) est un bon moyen de se mettre au courant, mais y a-t-il d'autres personnes ressources qui recommanderaient cela pour me donner une longueur d'avance accélérée. Livre? Page Web? Tutoriels?

Résumer:

  • Recommandations pour les ressources de recyclage spécifiques au C ++?
  • Pas OO / programmation en général.
  • Des choses en plus de lire et d'écrire du code.
Nick Fortescue
la source

Réponses:

10

Si vous avez déjà "dévoré les livres de Scott Meyers ", vous êtes bien plus loin que le gars moyen qui a fait du C ++ il y a 10 ans (à mon humble avis). Obtenez la 3e édition de Effective C ++ (et le livre C ++ Coding Standards de Sutter / Alexandrescu) pour obtenir un bref rafraîchissement, et, vraiment, vous devriez être prêt à partir.

Les recommandations de ces livres (à l'origine 2005 je pense) sont tout aussi valables aujourd'hui qu'elles ne l'étaient à l'époque.

Oh, et installez boost si vous ne l'avez pas déjà fait.

Heureusement pour vous de redémarrer en C ++, car je suis sûr qu'il y aura beaucoup de ressources et de livres de type redémarrage cette année et l'année prochaine lorsque la norme C ++ 11 commencera à s'installer.

Martin Ba
la source
Excellentes recommandations. Scott Meyers est venu dans notre entreprise l'année dernière et a donné à tous nos développeurs un cours de recyclage de deux jours sur les techniques C ++ modernes. Il sait comment C ++ fonctionne dans le monde réel et n'est pas seulement un autre universitaire avec des théories.
Karl Bielefeldt
2

1) Commencez avec un compilateur moderne qui a des fonctionnalités c ++ 11 (en supposant que votre travail exigera cela plus tôt que tard, si ce n'est déjà fait)

2) prenez des programmes existants (peut-être vos projets préférés) et mettez-les à jour ou étendez-les pour utiliser des bibliothèques plus modernes (telles que les bibliothèques standard c ++ 11 ou boost ).

3) lisez les dernières fonctionnalités C ++. il y a aussi de nombreux bons livres. si vous n'avez pas encore lu Modern C ++ Design , je le recommande. c'est un classique pour les conceptions avancées utilisant des techniques c ++ qui ont été introduites et perfectionnées pendant votre absence.

c'est un point de départ.

Justin
la source
1

Pseudo,

Je vous suggère de vous impliquer dans un projet open source. Avez-vous regardé sourceforge ? Cela pourrait s'appliquer à n'importe quelle langue, mais l'avantage clé ici est d'apprendre des autres développeurs tout en contribuant à un projet logiciel. Vous pouvez choisir certains styles intéressants et utiliser les fonctionnalités du langage en travaillant sur un projet open source. Certains bons, certains mauvais, certains .... tout simplement bizarre :).

Planète désolée
la source
4
Peut-être que je n'ai pas eu de chance, mais les projets open source que j'ai vus contenaient certains des codes les plus horribles que j'ai jamais rencontrés - ils pourraient être utilisés comme des exemples parfaits de la façon de ne pas écrire C / C ++. Donc, si vous décidez de jeter un œil à l'open source pour le plaisir d'apprendre, je vous suggère de choisir un projet auquel beaucoup de programmeurs participent activement. De tels projets sont beaucoup plus susceptibles d'avoir du code de bonne qualité.
1

Faites du code kata en c ++: tour hanoi, tampon en anneau, et ce genre de choses. Le faire sera beaucoup plus efficace que de simplement lire des livres à ce sujet - bien que lire des livres vous aidera à apprendre des choses que vous ne saviez pas.

Sardathrion - contre les abus SE
la source