Martin Schleiss intentou comparar varios proxectos de código aberto en canto á complexidade do código e á comprensión de como funciona o código e que accións realiza. Por exemplo, un proxecto faise máis difícil de entender cando utiliza abstraccións complexas, como a comunicación distribuída de compoñentes a través dunha rede, ou utiliza un gran número de módulos e clases aniñados.
A métrica utilizada para avaliar a complexidade potencial foi contar o número de operacións de importación que entrelazaron diferentes ficheiros. Suponse que unha persoa pode analizar facilmente 5-6 conexións de diferentes ficheiros e, a medida que este indicador aumenta, faise máis difícil entender a lóxica.
Resultados obtidos (o nivel de dificultade defínese como a porcentaxe de ficheiros que teñen ligazóns a outros 7 ou máis ficheiros).
- Elasticsearch - 77.2 %
- Código de Visual Studio - 60.3%.
- Ferruxe - 58.6%
- Núcleo de 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%
Fonte: opennet.ru