Évaluer le niveau de complexité potentielle du code des projets open source

Martin Schleiss a essayé de comparer divers projets open source en termes de complexité du code et de compréhension du fonctionnement du code et des actions qu'il effectue. Par exemple, un projet devient plus difficile à comprendre lorsqu'il utilise des abstractions complexes, telles que la communication distribuée de composants sur un réseau, ou lorsqu'il utilise un grand nombre de modules et de classes imbriqués.

La mesure utilisée pour évaluer la complexité potentielle consistait à compter le nombre d’opérations d’importation mêlant différents fichiers. On suppose qu'une personne peut facilement analyser 5 à 6 connexions de fichiers différents, et à mesure que cet indicateur augmente, il devient plus difficile d'en comprendre la logique.

Résultats obtenus (le niveau de difficulté est défini comme le pourcentage de fichiers ayant des liens vers 7 autres fichiers ou plus).

  • Recherche élastique - 77.2 %
  • Code Visual Studio - 60.3 %.
  • Rouille - 58.6%
  • Noyau Linux - 48.7%
  • PostgreSQL - 46.4%
  • mongoDB - 44.7%
  • Node.js - 39.9%
  • PHP — 34.4%
  • CPython - 33.1%
  • Django - 30.1%
  • réagirJS - 26.7%
  • Symfony - 25.5%
  • Laravel - 22.9%
  • suivantJS - 14.2%
  • chakra-ui - 13.5%

Source: opennet.ru

Ajouter un commentaire