Ацэнка ўзроўню патэнцыйнага ўскладнення кода адкрытых праектаў

Марцін Шлейс (Martin Schleiss) паспрабаваў параўнаць розныя адкрытыя праекты з пункту гледжання ўскладненасці кода і разумення як код працуе і якія дзеянні выконвае. Напрыклад, праект становіцца больш складаны для разумення пры ўжыванні складаных абстракцый, такіх як размеркаванае ўзаемадзеянне кампанентаў па сетцы, або выкарыстанні вялікай колькасці ўкладзеных модуляў і класаў.

У якасці метрыкі для ацэнкі патэнцыйнай ускладненасці выкарыстоўваўся падлік колькасці аперацый імпарту, якія ўтвараюць перапляценне розных файлаў. Мяркуецца, што чалавек без праблем можа разабраць 5/6 падлучэнняў розных файлаў, а пры павелічэнні дадзенага паказчыка зразумець логіку становіцца складаней.

Атрыманыя вынікі (узровень складанасці вызначаецца як працэнт файлаў, у якіх ёсць спасылкі на 7 і больш іншых файлаў).

  • Elasticsearch – 77.2%
  • Visual Studio Code – 60.3%.
  • Rust - 58.6%
  • Ядро 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%

Крыніца: opennet.ru

Дадаць каментар