Procjena razine potencijalne složenosti koda projekata otvorenog koda

Martin Schleiss pokušao je usporediti različite projekte otvorenog koda u smislu složenosti koda i razumijevanja kako kod radi i koje radnje izvodi. Na primjer, projekt postaje teže razumjeti kada koristi složene apstrakcije, kao što je distribuirana komunikacija komponenti preko mreže, ili koristi veliki broj ugniježđenih modula i klasa.

Mjerni podatak korišten za procjenu potencijalne složenosti brojao je broj operacija uvoza koje su ispreplele različite datoteke. Pretpostavlja se da osoba može lako analizirati 5-6 veza različitih datoteka, a kako se ovaj pokazatelj povećava, postaje sve teže razumjeti logiku.

Dobiveni rezultati (razina težine definirana je kao postotak datoteka koje imaju veze na 7 ili više drugih datoteka).

  • Elasticsearch - 77.2%
  • Visual Studio Code - 60.3%.
  • Hrđa - 58.6%
  • Linux kernel - 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%
  • čakra-ui - 13.5%

Izvor: opennet.ru

Dodajte komentar