Document:Loi

Une définition du Jargon Français.
Aller à : Navigation, rechercher

Il semble que les informaticiens, comme quelques autres professions, soient parfaitement fascinés par les lois calquées sur le modèle des lois de la physique. On rencontre ainsi la loi de Moore, celle de Murphy, de Brooks, Myers, Rock...

En voici quelques autres (repêchées dans ma vieille pile de la revue « ST Mag »). Les lois de Kernighan concernant la rédaction d'un code source propre et net:

  1. Dites ce que vous pensez, simplement et directement.
  2. Écrivez clairement, ne jouez pas au malin !
  3. N'utilisez pas une expression conditionnelle à la place d'une expression logique.
  4. N'hésitez pas à utiliser des parenthèses afin d'éviter toute ambiguïté.
  5. À chaque fois que vous faites un test, faites quelque chose en conséquence.
  6. Utilisez les bonnes fonctions d'un langage, pas les mauvaises! (Y compris le goto, qui peut être nécessaire, parfois).
  7. Captez la régularité dans le flux de contrôle, l'irrégularité dans le flux de données.
  8. Chaque fonction ou module devrait se contenter de remplir correctement une et une seule mission.
  9. Assurez-vous que le code source et les commentaires sont cohérents.
  10. Ne répétez pas le code source dans vos commentaires. Faites en sorte que chaque commentaire apporte quelque chose.
  11. Ne commentez pas un mauvais code source, réécrivez-le.
  12. Utilisez des constantes symboliques au lieu de nombres « magiques ».
  13. Méfiez-vous des effets secondaires et de l'ordre d'évaluation.
  14. Les macros ne sont pas des fonctions !
  15. Assurez-vous qu'une information fournie par l'utilisateur ne peut dépasser les limites de votre programme.
  16. Programmez de façon défensive.

Autre exemple, les lois de Small concernant la poursuite d'études, au lycée et en fac (Dave Small est un bidouilleur qui s'est fait connaître sur les Atari en réalisant un émulateur Mac) :

  1. Il y a des façons d'échapper au système.
  2. Les notes, comme la physique quantique, procèdent d'une autre réalité.
  3. Les notes de lycée doivent être considérées comme une série de chiffres plus ou moins aléatoires, et ne sont pas représentatives de votre intelligence, de vos capacités ou de votre ardeur au travail.
  4. Les professeurs sont prêts à toutes les bassesses pour se débarrasser le plus vite possible de la corvée de la correction des copies.
  5. Souvenez-vous que vous payez tout ça.
  6. Si les cours sont médiocres, faites-vous vos propres TP. Au moins, vous apprendrez quelque chose!
  7. Parfois, vous pouvez apprendre quelque chose d'important.
  8. Les notes sont nécessaires, et même si tout le monde est excellent, il faut en trouver qui récolteront les mauvaises notes, et d'autres les bonnes.
  9. Concernant la compétition, au moins, le lycée peut former pour affronter le monde réel.
  10. Éviter le stress est sans doute la chose la plus importante que vous devez apprendre durant vos études.
  11. Les meilleurs, les plus brillants, ne s'embarrassent pas de perdre 4 ans à subir un test d'endurance au stress, et ne vont jamais au lycée. Wozniak est allé au lycée après avoir fait d'Apple le succès que l'on sait.
  12. Il y a des choses qui peuvent coûter trop cher.
  13. Tout le monde regrette de ne pas être davantage sorti, durant sa période au lycée.
  14. Tout le monde oublie combien il peut être terrifiant de demander ou d'accepter de sortir avec quelqu'un.
  15. Le lycée est l'endroit rêvé pour rencontrer quelqu'un d'intéressant, car c'est là que se concentrent les gens que vous cherchez à rencontrer. Ça vous économise bien des sorties inutiles.

Autres exemples de lois :

Théorème de Stockmayer 
Si ça a l'air facile, c'est difficile. Si ça a l'air difficile, c'est carrément impossible. Si ça a l'air impossible, c'est un compilateur Ada.
Loi de Booker 
Dix grammes d'abstraction valent des tonnes de bricolage.
Loi de Klipstein 
Les défauts n'apparaissent qu'après que le programme a passé (avec succès) la phase d'intégration.
Loi de Gilb 
Les ordinateurs ne sont pas fiables mais les êtres humains le sont encore moins. Les investissements en fiabilité augmenteront jusqu'à dépasser le coût probable des erreurs, ou jusqu'à ce que quelqu'un insiste pour qu'on se mette à faire du travail utile. Les investissements en fiabilité des programmes en C augmenteront jusqu'à ce que le programmeur juge plus intéressant de se mettre à écrire un super utilitaire pour Unix, ou jusqu'à ce que quelqu'un insiste pour tout recoder en Ada.
Loi de Brooks 
Doubler le nombre de programmeurs sur un projet en retard ne fait que doubler le délai avant la livraison.
Loi de Lubarsky 
Il y a toujours un bug de plus.
Seconde loi de Weinberg 
Si les architectes construisaient les maisons comme les programmeurs écrivent les programmes, le premier pic-vert venu détruirait la civilisation.
Loi de Poe
lire smiley.