Vurdering af niveauet af potentiel kodekompleksitet af open source-projekter

Martin Schleiss forsøgte at sammenligne forskellige open source-projekter med hensyn til kodekompleksitet og forståelse af, hvordan koden fungerer, og hvilke handlinger den udfører. For eksempel bliver et projekt sværere at forstå, når det bruger komplekse abstraktioner, såsom distribueret kommunikation af komponenter over et netværk, eller bruger et stort antal indlejrede moduler og klasser.

Den metrik, der blev brugt til at vurdere potentiel kompleksitet, var at tælle antallet af importhandlinger, der flettede forskellige filer sammen. Det antages, at en person nemt kan parse 5-6 forbindelser af forskellige filer, og da denne indikator stiger, bliver det sværere at forstå logikken.

Opnåede resultater (sværhedsgrad er defineret som procentdelen af ​​filer, der har links til 7 eller flere andre filer).

  • Elasticsearch - 77.2 %
  • Visual Studio Code - 60.3%.
  • Rust - 58.6 %
  • Linux-kerne - 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 %

Kilde: opennet.ru

Tilføj en kommentar