Le code ce n'est pas comme le vélo...
∞ • 05 Mar 2012
... ça s'oublie. Oui, sans pratique, on redevient facilement un gros débutant. Et ce n'est pas forcement quelque chose que j'apprécie.
Petit reminder. J'ai appris lors de mes études à coder en C, C++ (et j'en ai bouffé), ainsi qu'un peu de Java, C#, et Ruby. Par la suite en entrant dans le monde du travail, j'ai fais pas mal de PHP, et au final beaucoup beaucoup d'Objective-C, pour la réalisation d'applications iOS.
Bref au final sur les 5 dernières années, j'ai utilisé énormément de langage me demandant de gérer la mémoire, de savoir ce que sont des pointeurs et comment ne pas merder avec. Le plus souvent (mis à part le C en fait) il s'agissait de langage utilisant des Objets.
Seulement voilà, depuis maintenant 1 an et demi, je travaille en C# qui est un langage pour faire du code managé (et depuis 6 mois je ne fais que ça), donc fini la gestion de la mémoire. De plus celui-ci est d'assez haut niveau, donc plus de prise de tête sur les chaines de caractères par exemple. Pour faire simple, maintenant je passe plus de temps à réfléchir à ce que je veux faire et comment le faire, qu'à me prendre la tête sur les contraintes du langage.
Sauf que mercredi, j'ai dû faire un peu de C++, et donc rejouer avec la mémoire et les chaines de caractères, et des choses qui pour moi été trivial, me sont d'un coup apparu comme plus complexe. Et des questions que je ne me posé plus sont revenus, du genre:
Ca marche comment déjà la gestion de la mémoire ?
ou
Et merde pourquoi ma chaine de caractères contient de la merde ?!
Je ne m'étais pas posé ce genre de question depuis bientôt 3 ans, et en un peu plus de 6 mois, j'ai l'impression d'avoir oublié certaines bases.
Et franchement, c'est la honte.