Martin Schleiss a tenté de comparer différents projets open source en termes de complexité du code et de compréhension du fonctionnement du code et des actions réalisées. Par exemple, un projet devient plus difficile à comprendre lorsqu'il implique des abstractions complexes, telles que l'interaction distribuée des composants via un réseau, ou l'utilisation d'un grand nombre de modules et de classes imbriqués.
Comme métrique pour évaluer la complexité potentielle, on a utilisé le comptage des opérations d'importation, formant l'entrelacement de différents fichiers. On suppose qu'une personne peut facilement traiter 5-6 connexions à différents fichiers, mais en augmentant ce nombre, il devient plus difficile de comprendre la logique.
Les résultats obtenus (le niveau de complexité est défini comme le pourcentage de fichiers faisant référence à 7 autres fichiers ou plus).
- Elasticsearch â 77,2%
- Visual Studio Code â 60,3%.
- Rust â 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%
- reactJS â 26,7%
- Symfony â 25,5%
- Laravel â 22,9%
- nextJS â 14,2%
- chakra-ui â 13,5%
Source : opennet.ru
