Avoimen lähdekoodin projektien mahdollisen koodin monimutkaisuuden tason arviointi

Martin Schleiss yritti vertailla erilaisia ​​avoimen lähdekoodin projekteja koodin monimutkaisuuden ja koodin toiminnan ja toimintojen ymmärtämisen suhteen. Esimerkiksi projektista tulee vaikeampi ymmärtää, kun se käyttää monimutkaisia ​​abstraktioita, kuten komponenttien hajautettua viestintää verkon yli tai käyttää suurta määrää sisäkkäisiä moduuleja ja luokkia.

Mahdollisen monimutkaisuuden arvioinnissa käytetty mittari oli eri tiedostot yhteen kietovien tuontitoimintojen lukumäärän laskeminen. Oletetaan, että henkilö voi helposti jäsentää 5-6 eri tiedostojen yhteyttä, ja tämän indikaattorin kasvaessa logiikkaa on vaikeampi ymmärtää.

Saadut tulokset (vaikeustaso määritellään prosenttiosuutena tiedostoista, joissa on linkkejä 7 tai useampaan muuhun tiedostoon).

  • Elasticsearch - 77.2 %
  • Visual Studio Code - 60.3%.
  • Ruoste - 58.6 %
  • Linux-ydin - 48.7 %
  • PostgreSQL - 46.4 %
  • mongoDB - 44.7 %
  • Node.js - 39.9 %
  • PHP – 34.4 %
  • CPython - 33.1 %
  • Django - 30.1 %
  • reagoiJS - 26.7 %
  • Symfony - 25.5 %
  • Laravel - 22.9 %
  • nextJS - 14.2 %
  • chakra-ui - 13.5%

Lähde: opennet.ru

Lisää kommentti