Ocena poziomu potencjalnej złożoności kodu projektów open source

Martin Schleiss próbował porównać różne projekty open source pod kątem złożoności kodu i zrozumienia, jak kod działa i jakie wykonuje działania. Na przykład projekt staje się trudniejszy do zrozumienia, jeśli wykorzystuje złożone abstrakcje, takie jak rozproszona komunikacja komponentów w sieci, lub wykorzystuje dużą liczbę zagnieżdżonych modułów i klas.

Metryką stosowaną do oceny potencjalnej złożoności było zliczenie liczby operacji importu, które przeplatały różne pliki. Zakłada się, że dana osoba może z łatwością przeanalizować 5-6 połączeń różnych plików, a wraz ze wzrostem tego wskaźnika coraz trudniej jest zrozumieć logikę.

Uzyskane wyniki (poziom trudności definiuje się jako procent plików zawierających linki do 7 lub więcej innych plików).

  • Elastyczne wyszukiwanie - 77.2%
  • Kod Visual Studio – 60.3%.
  • Rdza - 58.6%
  • Jądro Linuksa - 48.7%
  • PostgreSQL – 46.4%
  • mongoDB — 44.7%
  • Node.js – 39.9%
  • PHP — 34.4%
  • CPython — 33.1%
  • Django – 30.1%
  • zareagujJS - 26.7%
  • Symfony - 25.5%
  • Laravel – 22.9%
  • następnyJS - 14.2%
  • czakra-ui - 13.5%

Źródło: opennet.ru

Dodaj komentarz