• [^] # Re: Pas de "bonne" réponse

    Posté par . En réponse au journal Python comme premier langage de programmation ?. Évalué à 5.

    Je déconseillerais le C à quiconque ne souhaite pas devenir un "gros" programmeur,

    Au contraire, je l'imposerai a quiconque souhaitant devenir un gros programmeur, pas forcément pour l'utiliser en entreprise, mais j'en ai mare de voire des gens coder comme si la ram était infinie, ça marche bien sur les 2 jours de test, c'est validé en recette, puis dès qu'il y a un usage intensif, y a du java heap space ou autre erreur disant qu'il y a plus de mémoire (ou l'appli qui se fige en attendant que le ramasse miette récupère un peu de place).

    Le C (avec malloc et free), demande juste un peu de rigueur :

    • tu écris un malloc() => tu écris le qui va avec free(), et si tu ne le fais pas tu commente pour dire que l'ownership passe à telle fonction
    • tu récupères un pointeur ? as tu l'ownership dessus (=> free)
    • tu utilises un tableau combien de cases as tu besoins
    • tu fais une boucle quels sont les conditions / cas de sorties
    • ...

    Bref la plus grande partie des écueils du C, soulèvent généralement une question qu'il est pertinente de se poser, et qu'il faut généralement se poser avant de prendre le clavier. Je croise bien trop souvent du code où ça a été écrit sans la partie réflexion avant, et où il y a verrue sur verrue pour adapter le code aux nouvelles demandes, alors qu'une écriture pensée, propre à l'origine n'aurait eu besoin que d'extensions.

    Il ne faut pas décorner les boeufs avant d'avoir semé le vent