29 votes

Existe-t-il des modèles de débogage?

Je sais qu'il existe de nombreux Design Patters populaires et utiles.

Existe-t-il quelque chose comme eux pour les scénarios de débogage? Peut-être pas des modèles mais des méthodologies qui sont catégorisées et qui peuvent être utilisées à plusieurs reprises pour des cas similaires.

11voto

Broam Points 2646

J'ajouterai un autre modèle de débogage qui semble assez évident, mais qui n'a pas encore été dit:

Réduisez le bogue au plus petit cas possible, puis utilisez-le comme test unitaire pour tout correctif proposé.

8voto

Chris Cleeland Points 2199

Voici quelques-uns qui fonctionnent pour moi:

  • Pas loin de le problème. Semblable à la "obtenir plus de sommeil", parfois à s'éloigner du problème et de se concentrer sur quelque chose de complètement différent (par exemple, aller travailler) aide à fournir la clarté lorsque vous reprenez le travail sur le problème.
  • Expliquer le problème à ma femme. Eh bien, il n'a pas à être ma femme en particulier, mais de quelqu'un qui n'est pas familier avec le problème, le système, ou quoi que ce soit. Cela va vous forcer à avoir à apporter des hypothèses à la surface, expliquer comment le système fonctionne vraiment, peut-être même revenir au code afin de vérifier ce que vous dites. J'ai souvent eu des avancées significatives après ce genre d'échange.

7voto

Moshe Levi Points 2084

Je suis d'accord avec les autres à propos de l'Unité de Test comme un "Modèle" pour empêcher les bugs. en outre, je voudrais citer les étapes suivantes à partir de Débogage: Les 9 Règles Indispensables pour Trouver de Même le Plus Insaisissable des Problèmes Matériels et Logiciels:

  • Comprendre le système
  • Pour le faire échouer
  • Arrêter de penser et de regarder
  • Diviser pour régner
  • Changer une chose à la fois
  • Conserver une piste de vérification
  • Vérifiez la fiche
  • Obtenir une nouvelle vue
  • Si vous n'avez pas corriger, il n'est pas fixe

Et le dernier, le plus côté pratique, Dimitry Vostokov a réuni de très belles débogage des modèles dans son livre et site internet.

5voto

Bob Points 34449

Quand je suis en train de photographier dans le noir, je prends l'approche de recherche binaire. Je commente la moitié de mon code ou la moitié d'une méthode, quelque chose dans ce sens, puis je me concentre sur la moitié non commentée. Si le problème persiste, je commente une autre moitié. Etc.

5voto

GSto Points 13106

Mon approche est d'utiliser la méthode scientifique:

  1. Recueillir des données sur ce qui se passe, essayer de nombreuses entrées différentes et voir quelles sorties j'obtiens
  2. Développer une hypothèse sur ce qui se passe
  3. Testez cette hypothèse, et je n'ai pas raison, puis revenez à l'étape 1 et répétez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X