Understanding and Detecting Harmful Code

✒ Enzo SandrĂ© · 📆 04/02/2025 · 🩹 Code Smells

🐛 La plupart des odeurs du code ne sont pas corrĂ©lĂ©es Ă  la prĂ©sence de bugs et inversement, la plupart des bugs ne sont pas liĂ©s Ă  des odeurs du code. Ces deux concepts dĂ©signent des rĂ©alitĂ©s diffĂ©rentes. Une seule odeur du code ressort du lot en Ă©tant modĂ©rĂ©ment corrĂ©lĂ©e Ă  l’apparition de bugs : l’appel de mĂ©thodes abstraites depuis le constructeur. S’il faut prioriser un refactoring c’est bien celui-ci.

🔎 Le papier vise surtout Ă  amĂ©liorer les outils de dĂ©tection de bugs. En remontant depuis les odeurs jusqu’aux mĂ©triques permettant de les dĂ©tecter automatiquement, les chercheurs en ont sĂ©lectionnĂ© plusieurs qui sont modĂ©rĂ©ment corrĂ©lĂ©es Ă  l’apparition de bugs. Rien de surprenant pour un dĂ©veloppeur chevronnĂ© : nombre excessif de paramĂštres, nombre excessif de mĂ©thodes par classes, complexitĂ© ou longueur extrĂȘme d’une mĂ©thode. Rien de nouveau sous le soleil.

SOURCE

Rodrigo Lima, Jairo Souza, Baldoino Fonseca, Leopoldo Teixeira, Rohit Gheyi, Márcio Ribeiro, Alessandro Garcia, and Rafael de Mello. 2020. Understanding and Detecting Harmful Code. In Proceedings of the XXXIV Brazilian Symposium on Software Engineering (SBES ‘20). Association for Computing Machinery, New York, NY, USA, 223–232. DOI:10.1145/3422392.3422420

Enzo Sandré


📄 Lien public DOIs: 10.1145/3422392.3422420