• [^] # Re: c'est qd même un faiceau de preuves convergeant

    Posté par (site web personnel) . En réponse à la dépêche faille dans apache. Évalué à 1.


    Eh, mais arrète ton obsession !
    Tu crois qu'il n'y a qu'en C qu'il y a des bugs ? Tu crois qu'en Java, en Caml, en Ada, en Python ou en VB y'en a pas des bugs ?!

    Bien sur que si, mais a niveau de qualité équivalent, tu aura juste passé deux fois moins de temps.

    Programmer en C, de manière sure, c'est parfaitement faisable il faut juste avoir un peu de méthode et faire gaffe à ce qu'on fait. Bien sûr quand on code on fait parfois des erreurs, mais c'est pareil dans _tous_ les langages.

    Non, ce n'est pas pareil dans tous les langages.
    Les langages qui ont étés conçu en n'oubliant pas que la programmation est une activité humaine font en sorte de limiter les failles. Les autres tendent des pièges sans arrêt. Exemple, l'obligation d'utiliser pointeurs et allocation dynamique, le fait d'être case-sensitive, le fait de permettre la confusion entre affectation et comparaison, etc, etc.

    De plus, les langages n'ont pas tous le même niveau d'abstraction. Que ce soit pour le codage (typage fort, interfacage avec le hard) ou la conception (gestion de la modularité, tasking, répartition) tous n'offent pas la même puissance. Ca n'est pas sans conséquence sur la productivité, et sur la qualité du résultat.

    C'est pas le langage qui fait un bon ou un mauvais programme, mais l'architecture globale du soft (le design) et les programmeurs (leur compétence, leur maîtrise du langage et le soin qu'ils ont mis à coder ce programme là).
    Non. Le langage a aussi une part importante. Quand on a découvert dans les années 70 que l'architecture était prépondérante, on a commencé a sortir ce lieu commun "peu importe le langage, pour peu qu'on ait le bon design".
    Ca s'appelle jetter le bébé avec l'eau du bain. On a fait la même chose ensuite avec le support de l'objet versus le support de la modularité.
    Un nouveau truc important n'efface pas les précédents, il s'ajoute. Je ne serai d'ailleurs pas surpris qu'on se remette à tout oublier avec l'arrivée de la vague AOP.

    Et pour ça, le C n'est pas du tout un mauvais langage, parce qu'il peut assez facilement être _complêtement_ maîtrisé.

    Oui, contrairement a C++. Mais ca ne compense pas ses faiblesses.