Menilai tingkat potensi kompleksitas kode proyek sumber terbuka

Martin Schleiss mencoba membandingkan berbagai proyek open source dalam hal kompleksitas kode dan pemahaman tentang cara kerja kode dan tindakan apa yang dilakukannya. Misalnya, sebuah proyek menjadi lebih sulit untuk dipahami ketika menggunakan abstraksi yang kompleks, seperti komunikasi komponen yang terdistribusi melalui jaringan, atau menggunakan sejumlah besar modul dan kelas yang disarangkan.

Metrik yang digunakan untuk menilai potensi kompleksitas adalah menghitung jumlah operasi impor yang menghubungkan berbagai file. Diasumsikan bahwa seseorang dapat dengan mudah mengurai 5-6 koneksi file yang berbeda, dan seiring dengan meningkatnya indikator ini, semakin sulit untuk memahami logikanya.

Hasil yang diperoleh (tingkat kesulitan didefinisikan sebagai persentase file yang memiliki link ke 7 atau lebih file lain).

  • Pencarian elastis - 77.2%
  • Kode Visual Studio - 60.3%.
  • Karat - 58.6%
  • Kernel Linux - 48.7%
  • PostgreSQL - 46.4%
  • mongoDB - 44.7%
  • Node.js - 39.9%
  • PHP β€” 34.4%
  • CPython - 33.1%
  • Django - 30.1%
  • reaksiJS - 26.7%
  • simfoni - 25.5%
  • Laravel - 22.9%
  • berikutnyaJS - 14.2%
  • chakra-ui - 13.5%

Sumber: opennet.ru

Tambah komentar